首页 > 解决方案 > DAX 计算所有单个产品的累计总和列(年初至今)

问题描述

我在一个表中有 3 列:DateProductVolume. 基于此,我想计算每个产品的累积总和(或 YTD)列。

我知道要计算我们使用的累积总数:

YTD_Actual = CALCULATE(Sum(Combined[Actual Volume]),FILTER(Combined,Combined[Date] <= EARLIER(Combined[Date])))

但我希望这能额外过滤单个产品并为该产品进行计算。

预期的列如下图所示:

在此处输入图像描述

标签: powerbidax

解决方案


就您设法以日期格式获取月份列而言,以下工作:

YTD = 
VAR currProduct = Table1[Product]
VAR currMonth = Table1[Month]
VAR ytdTotal =  
    CALCULATE(
        SUM(Table1[Volume]),
        FILTER(
           ALL(Table1),
           Table1[Month] <= currMonth &&
           Table1[Product] = currProduct
        )
    )
RETURN IF(NOT(ISBLANK(ytdTotal)), ytdTotal,0)

结果:

在此处输入图像描述


推荐阅读