none
calculos en una dimension RRS feed

  • Pregunta

  • Hola

    Estoy armando un reporte de una tabla dinamica q toma datos de un cubo, y tine la sgte forma:
                             Jan        Feb       Mar   Apr
    Saldo inicial      0          100       250   400
    income             300        250        300
        sales A         100        150         100
        Sales B         200        100        200

    Expenses          200        100       150
         Taxes           50          70        100
         Others          150        30         50

    Total:               100       250        400
    Esto sale de basicamente 3 tablas q son:

    FACT TABLE
    ConceptID    Month   Value
    1                  1            100
    1                  2            150
    1                  3            100
    2                  1            200
    2                  2            100
    2                  3            200
    3                  1            50
    3                  2            70
    3                  3            100
    4                  1            150
    4                  2            30
    4                  3            50

    CONCEPT
    ConceptID   Description  ConceptParent
    1                Sales A           5
    2                Sales B           5
    3                Taxes             6
    4                Others            6
    5                Income           0
    6                Expenses        0

    TIEMPO
    Mes   Nombre
    1       Enero
    2       Febrero
    .....


    Como ven el total de Enero es el incial de Febrero y asi sucecivamente. En mi tabla de hechos no existe el valor "Saldo inicial"  pienso q se deberia poder calcular en el cubo de alguna manera, creo q se puede aplicar el uso de calculos con mdx, pero no se como hacerlo, no conozco el codigo mdx.
    He definido la dimension "concepto" con jerarquia recursiva y funciona muy bien, mi tema es como hacer el calculo de saldo y el arrastre al mes siguiente, o será mejor procesarlo en la carga de la tabla de hechos??? la verdad q no me gusta mucho esa idea, que opinan de este tema?

    Gracias por la ayuda


    Salu2 Sergio T

    martes, 7 de agosto de 2012 21:29

Respuestas

  • No se si te entendí bien, pero creo que con calculated members solucionas tu problema:

    http://www.youtube.com/watch?v=G3_Ftj1ZeXs

    Avisame si es lo que necesitas


    MVP MCT MCTS Daniel Calbimonte

    http://elpaladintecnologico.blogspot.com

    jueves, 9 de agosto de 2012 16:04
  • Hola Sergio,

    Lo suyo es que te crees un miembro calculado, puedes hacerlo en el cubo o en el informe com sugiere Dani. Si la dimensión conceptos la tienes bien definida, el miembro [All] debería darte el resultado calculado de los miembros hijos y extrayendo el del mes anterior, tendrías el saldo inicial para cada mes. Traducido a MDX:

    ([Measures].[Value],[Conceptos].[Concepto].[All],[Fecha].[Mes].Currentmember.lag(1))

    Es una intersección entre la medida Value (con el monto), el conjunto de todos los conceptos (miembro all) y el mes anterior al actual, dónde actual no sigfica hoy sino el que se encuentre activo para la 'fila'. La función de miembro LAG retrocede n miembros en el mismo nivel, es lo mismo que utilizar .PrevMember.

    Espero que te aclare algo.


    Víctor M. Sánchez García (ES) (BI) 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

    viernes, 10 de agosto de 2012 8:31

Todas las respuestas

  • No se si te entendí bien, pero creo que con calculated members solucionas tu problema:

    http://www.youtube.com/watch?v=G3_Ftj1ZeXs

    Avisame si es lo que necesitas


    MVP MCT MCTS Daniel Calbimonte

    http://elpaladintecnologico.blogspot.com

    jueves, 9 de agosto de 2012 16:04
  • Hola Sergio,

    Lo suyo es que te crees un miembro calculado, puedes hacerlo en el cubo o en el informe com sugiere Dani. Si la dimensión conceptos la tienes bien definida, el miembro [All] debería darte el resultado calculado de los miembros hijos y extrayendo el del mes anterior, tendrías el saldo inicial para cada mes. Traducido a MDX:

    ([Measures].[Value],[Conceptos].[Concepto].[All],[Fecha].[Mes].Currentmember.lag(1))

    Es una intersección entre la medida Value (con el monto), el conjunto de todos los conceptos (miembro all) y el mes anterior al actual, dónde actual no sigfica hoy sino el que se encuentre activo para la 'fila'. La función de miembro LAG retrocede n miembros en el mismo nivel, es lo mismo que utilizar .PrevMember.

    Espero que te aclare algo.


    Víctor M. Sánchez García (ES) (BI) 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

    viernes, 10 de agosto de 2012 8:31