MDX 去年完整版(尚未发布)

发布于 2024-12-20 10:18:01 字数 1125 浏览 1 评论 0原文

我将其用于 LastYTD

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

现在我需要完整的去年,而不是 YTD。怎么做呢?

更新

我尝试过以下操作,但它仅显示年份级别的结果。

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
)

结果:

在此处输入图像描述

UPDATE3:

这就是我需要的: 在此处输入图像描述

I use this for LastYTD

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

Now I need full last year, not YTD. How to do that?

UPDATE:

II have tried following but it shows results only on Year level.

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

SCREENSHOT
enter image description here

Query 2:

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

Results:

enter image description here

UPDATE3:

This is what I need:
enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

-黛色若梦 2024-12-27 10:18:01

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

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 = "#,#", 

希望这可以帮助你。

I was able to do this with 2 calculations

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 = "#,#", 

I hope this can help you.

冷…雨湿花 2024-12-27 10:18:01
ROUND(
    SUM(ParallelPeriod([Invoice Date].[Date Hierarchy].[Year]
        , 1
        , [Invoice Date].[Date Hierarchy].CurrentMember)
        , [Measures].[Revenue]
    ),
    2
)

我刚刚从您的表达式中删除了 YTD 函数。在我的数据库上,这个表达式工作得很好,除了日期维度上有一些间隙的情况(例如:2009、2011 成员存在于年份级别,但不存在 2010 成员)。

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

更新版本:
(通过注释:当年的所有成员都必须包含上一年的值)

(
   ClosingPeriod(
         [Invoice Date].[Date Hierarchy].[Year]
        ,[Invoice Date].[Date Hierarchy].CurrentMember
   ).lag(1)
   , [Measures].[Revenue]
)

ps 该表达式尚未经过测试。

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

I have just removed YTD function from your expression. On my DB this expression works fine, except the situation when we have some gaps in the date dimension (for example: 2009, 2011 members exist on level Year, but not 2010 member).

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

Updated version:
(by the comments: all members for the current year must contain value for the previous year)

(
   ClosingPeriod(
         [Invoice Date].[Date Hierarchy].[Year]
        ,[Invoice Date].[Date Hierarchy].CurrentMember
   ).lag(1)
   , [Measures].[Revenue]
)

p.s. This expression hasn't been tested yet.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文