使用 OFFSET 获取上一行的值,以便我可以计算差异

问题描述 投票:0回答:1

我正在创建一个报告,该报告将显示一行与前一行之间特定列中的更改。

当我使用以下 DAX 公式时,列中没有显示任何内容

PreviousWeightedRevenue = 
    CALCULATE(
        SUM('table'[WeightedRevenue]),
        OFFSET(-1, ORDERBY('table'[EndOfSnapshotWeek], ASC), PARTITIONBY('table'[UniqueKey])
    )
)

UniqueKey
标识一组链接的行。

SnapshotWeek
- 每行代表每周快照而不是每日

每个

UniqueKey
可以有一个或多个
SnapshotWeek

这是计算列的结果 -

PreviousWeightedRevenue 

enter image description here

然后我将扩展 DAX 来计算

PreviousWeightedRevenue
WeightedRevenue
之间的差异,但我需要先让这一点工作

dax powerbi-desktop calculated-columns
1个回答
0
投票

你可以试试这个

MEASURE =
VAR _date =
    MAXX (
        FILTER (
            ALL ( 'Table' ),
            'Table'[uniquekey] = MAX ( 'Table'[uniquekey] )
                && 'Table'[EndOfSnapshotWeek] < MAX ( 'Table'[EndOfSnapshotWeek] )
        ),
        'Table'[EndOfSnapshotWeek]
    )
RETURN
    SUMX (
        FILTER (
            ALL ( 'Table' ),
            'Table'[uniquekey] = MAX ( 'Table'[uniquekey] )
                && 'Table'[EndOfSnapshotWeek] = _date
        ),
        'Table'[WeightedRevenue]
    )

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.