quiero sacar una medida MDX complicada,ya que es calcular los diferentes materiales de dos grupos de registros:
el 1º son los materiales que tiene una tabla de hechos el ultimo año
el 2º los diferentes materiales que tiene la misma tabla con stock hace un año ( es decir en el caso de hacerlo ahora, seria los diferentes materiales antes del 3/11/08 con stock al 3/11/08)
Pero no debe contar los dos grupos por separado , en el caso de haber un material en el primer caso y el mismo en el 2º, solo debe contar uno.
se sacar la medida de stock es:
Sum(
PeriodsToDate([Time].[Year - Trimester - Month - Date].[(All)]
,[Time].[Year - Trimester - Month - Date].currentmember),
[Measures].[qty]
)
y la medida de contar los diferentes materiales con stock al dia de hoy es :
count(distinct(filter([Olap].[material].[material].members,[Measures].[stock]<>0)))
No se hacerlo para contar los diferentes materiales con stock hace un año . Creo que hay que usar ancestor o algo asi.
Pongo un ejemplo
Mi tabla de hechos:
mat. , QTY , FECHA
A -10 01/02/2009
B -12 01/02/2009
A 10 01/02/2009
C -2 01/07/2008
C +2 01/07/2008
B 12 01/07/2008
F 2 01/07/2008
F -1 01/07/2008
La solucion de la medida seria : 3
Porque?
1 Porque A es un material del ultimo año (12 months)
2 Porque B es un material del ultimo año(12 months)
3 Porque F es un material con stock el dia : 3/11/2008, (stock es 2-1=1)
no cuento B (B 12 01/07/2008) porque ya existe el registro en el ultimo año.
no cuento C porque tiene stock 0 (no tiene stock ) y son registros anteriores al dia 3/11/08
gracias