Ssas 去年MDX已满(非最新)

Ssas 去年MDX已满(非最新),ssas,mdx,Ssas,Mdx,我用这个做拉斯蒂德 ROUND( SUM(YTD(ParallelPeriod([Invoice Date].[Date Hierarchy].[Year] , 1 , [Invoice Date].[Date Hierarchy].CurrentMember)) , [Measures].[Revenue] ), 2 ) 现在我需要的是去年的全部,而不是年初至今。怎么做 更新: 我已经尝试了以下内容,但它只显示了年度水平

我用这个做拉斯蒂德

ROUND(
    SUM(YTD(ParallelPeriod([Invoice Date].[Date Hierarchy].[Year]
        , 1
        , [Invoice Date].[Date Hierarchy].CurrentMember))
        , [Measures].[Revenue]
    ),
    2
)
现在我需要的是去年的全部,而不是年初至今。怎么做

更新

我已经尝试了以下内容,但它只显示了年度水平的结果

ROUND(
    SUM(YTD(ParallelPeriod([Invoice Date].[Date Hierarchy].[Year]
        , 1
        , ClosingPeriod([Invoice Date].[Date Hierarchy].[Year],
            [Invoice Date].[Date Hierarchy].CurrentMember)
        )
        )
        , [Measures].[Revenue]
    ),
    2
)
屏幕截图

问题2:

ROUND(
    SUM(ParallelPeriod([Invoice Date].[Date Hierarchy].[Year]
        , 1
        , [Invoice Date].[Date Hierarchy].CurrentMember)
        , [Measures].[Revenue]
    ),
    2
)
结果:

更新3:

这就是我需要的:

我刚刚从表达式中删除了YTD函数。在my DB上,此表达式可以正常工作,但日期维度中存在一些间隙的情况除外(例如:2009、2011成员存在于水平年,但不是2010成员)

/*********************************************/

更新版本: (根据注释:本年度的所有成员必须包含上一年度的值)


p、 这个表达还没有经过测试

我通过两次计算就可以做到这一点

CREATE MEMBER CURRENTCUBE.[MEASURES].[Revenue FY]
AS SUM((ANCESTOR([Date].[Y-Q-M-D].Currentmember, [Date].[Y-Q-M-D].[Year])), [Measures].[Revenue]), 
FORMAT_STRING = "#,#", 
VISIBLE = 1  ; 
CREATE MEMBER CURRENTCUBE.[MEASURES].[Revenue FY LY]
AS (PARALLELPERIOD( [Date].[Y-Q-M-D].[Year], 1,[Date].[Y-Q-M-D] ),[Measures].[Revenue FY]), 
FORMAT_STRING = "#,#", 

我希望这能帮助你。

很好。。。但问题是,我只在“总计”中看到这个值,而不是在每个记录中看到。可以到处展示吗?谢谢只需将[Invoice Date].[Date Hierarchy].CurrentMember添加到ClosingPeriod函数。仍然没有任何内容。这是截图:对不起,我的答案错了。我以后会尝试写一些不同的东西(现在我没有任何可能来写和验证我的表达)。我也尝试过这个,但它在不同的日期级别上显示不同的值…我在计算成员字段中复制了此语法,它返回错误。如果您在表单视图中添加计算,则只需要在“AS”之后的第二行中的部分。记住更改计算以添加命名语法。我的示例基于一个名为[Y-Q-M-D]的周期层次结构,该层次结构位于一个名为Date的维度中。还有一个称为“收入”的度量。您的发票日期维度是否设置为维度类型“时间”,并且您的hierarki中的属性是否设置为年、季、月和日?我刚刚用另一个多维数据集对此进行了测试,但遗憾的是,我不允许在此处发布屏幕截图,因此我无法向您显示我的透视表。实际上,您是对的。很抱歉,我不知道我可以在计算中使用脚本,我一直在使用表单视图,这就是为什么它不起作用。太好了,非常感谢!
(
   ClosingPeriod(
         [Invoice Date].[Date Hierarchy].[Year]
        ,[Invoice Date].[Date Hierarchy].CurrentMember
   ).lag(1)
   , [Measures].[Revenue]
)
CREATE MEMBER CURRENTCUBE.[MEASURES].[Revenue FY]
AS SUM((ANCESTOR([Date].[Y-Q-M-D].Currentmember, [Date].[Y-Q-M-D].[Year])), [Measures].[Revenue]), 
FORMAT_STRING = "#,#", 
VISIBLE = 1  ; 
CREATE MEMBER CURRENTCUBE.[MEASURES].[Revenue FY LY]
AS (PARALLELPERIOD( [Date].[Y-Q-M-D].[Year], 1,[Date].[Y-Q-M-D] ),[Measures].[Revenue FY]), 
FORMAT_STRING = "#,#",