如何通过余额更改量度来计算缺少期初余额或期末余额

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

我有一个DAX度量来汇总余额变化,除非期初和期末值都存在,否则我需要它来排除数据。

以下是一些示例数据。当汇总到YYYY-MM级别时,如果开局和闭局Bal同时存在,我只想包括一行。在Excel中,如果缺少值,则通过返回NA()来实现。

enter image description here

如何在DAX中实现相同目标?这是我到目前为止创建的度量:

Closing Balance:= CALCULATE(SUM('Table'[Balance]), LASTDATE('Date'[Date]))

Opening Balance:= CALCULATE(SUM('Table'[Balance]), (DATEADD(FIRSTDATE('Date'[Date]),-1,DAY)))

Balance Change := [Closing Balance] - [Opening Balance]
ssas dax
1个回答
0
投票

您需要按所需的粒度进行迭代(我假设是“年月+帐户”)。在每次迭代期间,测试是否存在余额。例如,假设您在连接到主表的维表“科目表”中有科目:

Balance Change =
SUMX (
    SUMMARIZE ( 'Table', 'Chart of Accounts'[Account], 'Date'[YYYY-MM] ),
    VAR Opening_Balance = [Opening Balance]
    VAR Closing_Balance = [Closing Balance]
    RETURN
        IF ( Closing_Balance && Opening_Balance, Closing_Balance - Opening_Balance )
)

这里,我们使用SUMMARIZE创建一个包含'YYYY-MM'和Accounts的虚拟表。然后,我们使用SUMX逐条记录对该表记录进行迭代。对于每个年度月份和科目,我们计算期初和期末余额。然后,我们测试它们是否为零或空白,并返回差值。

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