如何在同一画面上显示当年和上一年的DAX累计总和?

时间:2020-01-08 19:00:31

标签: powerbi dax

我正在尝试在同一张图表(共享同一日期轴)上显示收入的运行总计(滚动12个月,不是年初至今的日历)(累计金额)。 我为当前年份的累积总和创建了一个可以正常工作的度量:

$CumulativeBookingRevenueCY = 
CALCULATE(
    [$Revenue],
    FILTER(
        CALCULATETABLE(
            SUMMARIZE(
                'DimDateBooking',
                'DimDateBooking'[Date]
            ),
            ALL('DimDateBooking')
        ),
        ISONORAFTER(
            'DimDateBooking'[Date], MAX(DimDateBooking[Date]), DESC
        )
    )
)

但是我无法弄清楚上一年的措施出了什么问题。这是我正在使用的代码:

$CumulativeBookingRevenueLY = 
CALCULATE(
    [$Revenue LY],
    FILTER(
        CALCULATETABLE(
            SUMMARIZE(
                'DimDateBooking',
                'DimDateBooking'[Date]
            ),
            SAMEPERIODLASTYEAR('DimDateBooking'[Date])
        ),
        ISONORAFTER(
            SAMEPERIODLASTYEAR('DimDateBooking'[Date]), SAMEPERIODLASTYEAR(LASTDATE(DimDateBooking[Date])), DESC
        )
    )
)

我的收入指标定义如下:

$Revenue:= CALCULATE(Sum(FactTable[Revenue]))
$Revenue LY:= CALCULATE([$Revenue], DATEADD(DimDate[Date],-1,YEAR))

这是我的数据的一个示例(CY有效,LY不可用

Measure problem

有人可以告诉我我在想什么或做错了什么吗?谢谢!

1 个答案:

答案 0 :(得分:0)

好像您还缺少一些步骤。

您有:

$Revenue:= CALCULATE(Sum(FactTable[Revenue]))

$Revenue LY:= CALCULATE([$Revenue], DATEADD(DimDate[Date],-1,YEAR))

在表格中使用以下包含上述措施的其他措施:

revenue_last_year = IF( LASTDATE(Dates[Date]) > TODAY(), BLANK(), CALCULATE([$Revenue LY], DATESYTD(Dates[Date])))

revenue_this_year = IF( LASTDATE(Dates[Date]) > TODAY(), BLANK(), CALCULATE([$Revenue], DATESYTD(Dates[Date])))

希望有帮助!

相关问题