我在All_product维度中拥有All_Product层次结构。强度 - >产品 - >市场
我希望按月计算产品增长和市场增长((current-prev)/ prev)。我使用脚本来计算产品增长(wrt产品)和市场增长(wrt market),这些产品运行良好但如何针对每种产品展示市场增长。例如:该特定市场下每种产品的市场增长将是相同的 例如:
我有市场m1,市场m1有产品p1,p2和p3。我有个别产品增长和市场增长。问题是,当我将市场推向产品水平时,产品p1,p2,p3的市场增长值应相同。
如果product_growth(m1)= 50且market_growth(m1)= 75且product_growth为p1,p2和p3可能为15,25,10但是p1,p2,p3的market_growth将为75,75,75
我用于市场增长的脚本:
SCOPE
(
[Monthly Growth].[VOLUME CALC].&[2.]
,Descendants
(
[All Products].[All Products].[All]
,[All Products].[All Products].[Market]
)
,self
);
this =
IIF
(
Aggregate
(
[All Time Periods].[All Time Periods].[Prev_Month]
,[Monthly Growth].[VOLUME CALC].DefaultMember
)
= 0
,NULL
,
(
Aggregate
(
[All Time Periods].[All Time Periods].[Current_Month]
,[Monthly Growth].[VOLUME CALC].DefaultMember
)
-
Aggregate
(
[All Time Periods].[All Time Periods].[Prev_Month]
,[Monthly Growth].[VOLUME CALC].DefaultMember
)
)
/
Aggregate
(
[All Time Periods].[All Time Periods].[Prev_Month]
,[Monthly Growth].[VOLUME CALC].DefaultMember
)
);
END SCOPE;
这意味着相同的父值将以相同的方式传递给自己的子节点。