如何通过MDX中的维度显示去年的值?

时间:2016-09-16 00:35:17

标签: ssas mdx

我们的多维数据集中有一个相对日期维度,其成员值为This YearLast Year

用户在销售列上使用此设置,以便查看今年和去年同期的销售额。

问题出在他们使用Calendar Date过滤器仅选择本月的值时。如果用户仅选择这个月,那么去年成员就会消失。

有没有办法(可能有范围说明)我可以告诉SSAS:如果用户正在使用这些属性并且他们选择特定月份(或其他级别),那么使用ParallelPeriod隐式包含相同的前一年的会员,以便他们可以看到去年的销售情况?

如果没有,不使用计算成员(我有很多措施,我不想复制它们),有没有办法使用维度显示去年的值,即使用户选择今年的日期维度?

1 个答案:

答案 0 :(得分:0)

这里有几个选项......

我只是将一个新的计算成员添加到现有维度,我将其添加到伪维度[时间段]维度,类似于: (我非常确定你需要将它添加到现有的层次结构中。我假设[相对时间])

CREATE MEMBER [Time Period].[Relative Time].[Last Year]
AS NULL
, VISIBLE=1;
SCOPE(
    DESCENDTS([Time].[YearMonthDate].[Year].MEMBERS,,AFTER)
    ,[Time Period].[Relative Time].[Last Year]
    );
    THIS = AGGREGATE(
                PARALLELPERIOD(
                    [Time].[YearMonthDate].[Year]
                    ,1
                    ,[Time].[YearMonthDate].CURRENTMEMBER
                )
                ,[Measures].CURRENTMEMBER
            );
END SCOPE;