【发布时间】:2017-07-30 09:54:31
【问题描述】:
我正在尝试使用以下逻辑在 MDX 中创建度量 -
IIF([Date].[Date].CurrentMember.MemberValue >= '2017-06-01', [Measure 1] + [Measure 2], [Measure 1] + [Measure 3])
上面的表达式不起作用,因为它只对所有日期执行一次计算,而不是在指定的条件下。此外,即使在行上拖动年份,计算也应该有效。我的意思是它应该计算 6 月之前和 6 月之后的日期的 measure1+measure2 并再次返回两者的总和。
任何人都可以提供任何输入,我该如何实现?我需要在这里使用 SCOPE 之类的东西吗?
谢谢
【问题讨论】:
-
您是否尝试过使用 CDate 将日期转换为实际日期? Date.Date 成员类型是日期吗?
-
是的。我给了 [Date].[Date].[&2016-06-01T00:00:00].MemberValue 并且它正在识别比较。但结果并不如预期。因为 IIF 条件写在 Date 级别,所以当我拖动 Year 并尝试查看结果时它不起作用。即使我也拖动年、月、季度,谁能告诉我如何实现结果?
-
既然是同一个维度,为什么还要按 MemberValue 来比较呢?
[Date].[Date].CurrentMember >= [Date].[Date].[&2016-06-01T00:00:00]应该足够了。你也有等级制度吗?维度是否设置为日期时间? -
是的。我们有日期层次结构,其中年、季度、月、周、日期在那里。如果我不提供 .Membervalue,则无法正确评估条件。是的,维度设置为日期时间。