none
SSAS: INDICADOR CON DISTINTA FUNCION DE AGREGACION RRS feed

  • Pregunta

  • Hola,

    Soy nueva en BI con SQL Server; Tengo un cubo con una tabla de hechos FactGastos y 4 dimensiones: DimTiempo, DimArticulos, DimLugares, DimHogares.

    En la tabla de hechos se van almacenando los datos:


    Año, Mes, Lugar, Hogar, Concepto, ImporteGasto, GastoObjetivoPorConcepto, fechagasto

    2003, 01, xxx, aaa, 6, 2, 114, 2013.01.01

    2003, 01, xxx, aaa, 6, 5, 114, 2013.01.05

    2003,02, xxx, bbb,  6, 5, 114, 2013.02.01

    2003,03,xxx,  ccc,  6,  4, 114, 2013.03.01


    2003, 01, xxx, aaa, 8, 2, 100

    2003,02, xxx, bbb,  8, 5, 100

    2003,03, xxx, ccc, 8, 4, 100


    2003, 01, yyy, aaa, 6, 2, 114

    2003,02, yyy, bbb,  6, 5, 114

    2003,03,yyy,ccc,6,4,114


    Necesito un indicador que muestre el GastoObjetivo de forma que a nivel de artículo, necesitaría max(GastoObjetivoPorConcepto):

    2003, xxx,6,16,114

    2003,xxx,8,11,100

    2003,yyy,6,11,114


    pero si es a nivel de Lugar, sería la suma del objetivo de todos los artículos:

    2003,xxx,27,214

    2003,yyy,11,114

    En la primera forma sería indicador = max(GastoObjetivoPorConcepto)

    CREATE MEMBER CURRENTCUBE.[Measures].[IndicadorMAX]
     AS IIF( [Measures].[Máximo CANTIDAD OBJETIVO]>0,[Measures].[Máximo CANTIDAD OBJETIVO],
     [Measures].[Acumulado Año Anterior]*[Measures].[Máximo PORCENTAJE VARIACION]),
    VISIBLE = 1  ;

    y en la segunda indicador = sum(GastoObjetivoPorConcepto)

    CREATE MEMBER CURRENTCUBE.[Measures].[Indicador]
     AS IIF( [Measures].[Cantidad Objetivo]>0,[Measures].[Cantidad Objetivo],
     [Measures].[Acumulado Año Anterior]*[Measures].[Porcentaje Variación]),
    VISIBLE = 1 ,  ASSOCIATED_MEASURE_GROUP = 'Métricas';

    ¿hay forma de poder hacerlo en el mismo indicador indicando el nivel por el que hacer la agregación?

    He probado varias formas pero no consigo nada; he leído sobre la función SCOPE() pero tampoco he sabido usarla.

    Muchas gracias por adelantado. Salu2!




    martes, 18 de febrero de 2014 12:44

Respuestas

  • Hola @Garela

    Normalmente eso se resuelve con un case o un iif, evaluando el miembro actual (currentmember) del atributo/jerarquía correspondiente de las dimensiones artículos y lugares. Lo que habría que plantearse es ¿Qué comportamiento debe tener si el usuario segmenta por Articulo Y Lugar? ¿Cuál de los dos cálculos debería mostrar?

    Yo consideraría tener las métricas por separado, tal y como las has escrito. Por lo que deduzco estas creando la medida que hará de objetivo para evaluar un valor actual en un indicador...¿podrías mostrar dos indicadores?


    Víctor M. García Sánchez. Hope this help. Please vote if you find this posting was helpful. if this is an answer to your question, please mark it. http://bifase.blogspot.com | http://twitter.com/atharky

    jueves, 6 de marzo de 2014 9:24