You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DAX中按Source File计算对应最新Fiscal Week num的金额?

按Source File获取各公司最新财周金额的DAX修改方案

原代码的问题在于全局取最大财周,无法按每个公司(Source File)单独计算其最新财周的金额,以下是两种可行的修改方案:

方案一:保留Source File上下文计算最大财周

Current Week Amt = 
VAR CurrentFiscalWeek = 
    CALCULATE(
        MAX('DF'[Fiscal Week num]),
        ALLEXCEPT('DF', 'DF'[Source File])
    )
RETURN
CALCULATE(
    [total Measure],
    'DF'[Fiscal Week num] = CurrentFiscalWeek
)
  • 核心改动:用ALLEXCEPT('DF', 'DF'[Source File])清除除Source File外的所有筛选上下文,让MAX计算仅针对当前行的Source File取其最大财周,而非全局最大值。
  • 适用场景:当报表按Source File分组展示时,每个公司会自动匹配自身最新财周的金额。

方案二:分组计算后聚合

Current Week Amt = 
SUMX(
    SUMMARIZE(
        'DF',
        'DF'[Source File],
        "@MaxWeek", MAX('DF'[Fiscal Week num])
    ),
    CALCULATE(
        [total Measure],
        'DF'[Fiscal Week num] = [@MaxWeek]
    )
)
  • 逻辑说明:先通过SUMMARIZE按Source File分组,计算每个组的最大财周;再用SUMX遍历每个分组,计算对应最大财周的[total Measure]并聚合结果。
  • 适用场景:需要更灵活的分组逻辑,或存在多维度交叉展示时。

注意事项

确保[total Measure]是正确的聚合度量(如SUM/COUNT等),避免因筛选上下文冲突导致结果异常。

内容的提问来源于stack exchange,提问作者symkly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 10:02:17