none
Medida por el valor de atributo de una dimension en MDX RRS feed

  • Pregunta

  • Holas,

    Estoy empezando el mundo del MDX y tengo una pregunta que por mas que busco no doy con la solución.

    Tengo una medida que es [Unidades Vendidas] y ademas tengo una dimesion Producto en la que uno de los atributos es [Peso].

    ¿Como sería la expresion en MDX para que me diera los Kgs vendidos?

    Un saludo y muchas gracias por anticipado

    viernes, 13 de noviembre de 2015 11:54

Respuestas

  • Disculpa que se me escapara esto, no ví tu pregunta.

    La solución por la que has tomado camino es la mejor de las soluciones, al fin y al cabo el peso es un hecho.

    Para poderlo hacer con MDX (que se puede) habría que ir siempre a nivel de artículo Si por ejemplo tienes familias, colores, etc no nos vale ese nivel de granularidad ya que dos artículos del mismo color pueden tener pesos diferentes. así pues habría que usar el descendants del atributo o jerarquía que estes hasta pk. O si no pones las dependencias un cross join y confiar en la clausula autoexists, una vez en ese nivel, en producto.clave.currentmember.member_properties("peso") está el valor, pero está en modo alfanumérico, así que hay que llamar a VBA con algo como Cdbl(producto.clave.currentmember.member_properties("peso")*Measures.Unidades.

    Este MDX es ineficiente a mas no poder, así que, aunque se puede, no tiene ningún sentido y la opción que has tomado es la adecuada.


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    • Marcado como respuesta Ricardo760 martes, 17 de noviembre de 2015 9:18
    lunes, 16 de noviembre de 2015 15:25
    Moderador

Todas las respuestas

  • Como no encontré cómo hacerlo, al final hice un join y añadí el [Peso] a la tabla de hechos y convertirlo así en otra medida.

    lunes, 16 de noviembre de 2015 9:06
  • Disculpa que se me escapara esto, no ví tu pregunta.

    La solución por la que has tomado camino es la mejor de las soluciones, al fin y al cabo el peso es un hecho.

    Para poderlo hacer con MDX (que se puede) habría que ir siempre a nivel de artículo Si por ejemplo tienes familias, colores, etc no nos vale ese nivel de granularidad ya que dos artículos del mismo color pueden tener pesos diferentes. así pues habría que usar el descendants del atributo o jerarquía que estes hasta pk. O si no pones las dependencias un cross join y confiar en la clausula autoexists, una vez en ese nivel, en producto.clave.currentmember.member_properties("peso") está el valor, pero está en modo alfanumérico, así que hay que llamar a VBA con algo como Cdbl(producto.clave.currentmember.member_properties("peso")*Measures.Unidades.

    Este MDX es ineficiente a mas no poder, así que, aunque se puede, no tiene ningún sentido y la opción que has tomado es la adecuada.


    Comparte lo que sepas, aprende lo que no sepas (FGG)
    portalSQL
    El rincón del DBA

    • Marcado como respuesta Ricardo760 martes, 17 de noviembre de 2015 9:18
    lunes, 16 de noviembre de 2015 15:25
    Moderador