动态测量 (MDX)

Dynamically measured measure (MDX)

晚安!

我是 MDX 世界的新手,我很难创建计算量度,问题是:我有一个使用上个月的最终余额计算的量度作为当前月份。类似于他们在下面看到的内容。

This is how the data should appear 问题是我没有将以前的数据添加到显示的 mdx 脚本,所以它最终显示了一个不正确的初始值。在上图中,它应该 return 从公司开始计算到 selected 过滤器的最终余额。谁能帮帮我?

This is how it is showing up. 这是我创建的 mdx 查询:

成员[Saldo Final 2]作为 ([措施].[Certificados Novos] + [措施].[Reativados] - [措施].[Cancelados Menor ou Igual a 6 Parcela] - [措施].[Cancelados Maior que a 6 Parcela]) 成员 [Saldo Final Mês Anterior 2] 作为 (ParallelPeriod ([DIM TEMPO].[MES ANO].[MES ANO] , 1 , [DIM TEMPO].[MES ANO].CurrentMember ), [萨尔多决赛 2]) 成员 [Saldo Inicial 2] 作为 Sum([DIM TEMPO].[MES ANO].CurrentMember.FirstSibling:[DIM TEMPO].[MES ANO].CurrentMember, [Saldo Final Mês Anterior 2]) 成员 [Final] 作为 [Saldo Inicial] + [Measures].[Saldo Final 2]

select [DIM TEMPO].[MES ANO].[MES ANO] 在列上, {[Measures].[Certificados Novos], [Measures].[Reativados], [Measures].[Cancelados Menor ou Igual a 6 Parcela], [措施].[Cancelados Maor que a 6 Parcela], [Final] } 在行上 来自 [dw_sinaf] 在哪里 {[DIM TEMPO].[ANO].&[2016]}

不确定这正是您要找的东西,但我能够在简化模型上做到这一点:

有两种措施可供选择:

  1. 仅销售单位
  2. Return 只有单位

我们需要从初始日期开始的每一天(在您的示例中为月份)运行 逐月计算 SUM。

FINAL 和 INICIAL 的代码在这里:

with member [Final] as
([Date].[Year Qtr Month].[Date].&[20170501]
,[Measures].[Sales Only Units])
+
SUM([Date].[Year Qtr Month].[Date].&[20170501]
:[Date].[Year Qtr Month].CurrentMember
,[Measures].[Return Only Units])

member [Inicial] as
([Final]-[Measures].[Return Only Units])

select non empty [Date].[YQM].[Date].members on 0
,{[Inicial],[Measures].[Sales Only Units],[Measures].[Return Only Units],[Final]} on 1
from [My_Cube]

蓝色为初始值"from the beginning of the company"

如果需要使用另一个初始日期,则使用红色值

需要绿色 运行 值

[Sales Only Units] 最好对每个成员隐藏,除了初始日期,以免混淆业务用户。