首页 文章

使用DAX汇总子类别的最后一个值

提问于
浏览
1

我需要在选定日期汇总 stock on hand 的值,这些值需要汇总到2个或更多类别 .

以下度量为我提供了最低级别项目的现有值,但是当它汇总到子类别或类别级别时,它会汇总所有值,而不是每个子项目的LASTNONBLANK .

On Hand = CALCULATE(SUMX(股票,[SOH]),过滤器('Calendar',[日期] <= LASTNONBLANK('Calendar' [日期],SUM(股票[SOH]))))

我的数据集类似于:

stock table

现在,获取最后一个SOH值,其中date <= 10 Dec 2017将与我的度量一起使用,结果如下 .

Query 1

只要我需要通过删除“大小”列来汇总聚合,总和就不再按预期工作了 .

这就是我需要的样子:

result 2

类似于我需要类别级别来汇总最低级别项目的所有LASTNONBLANK值,如下所示:

results 4

任何帮助,将不胜感激 .

2 回答

  • 0

    我通常更喜欢在DAX中使用度量而不是计算列,但是,因为相关的SOH值依赖于最低级别的比较,所以这是我要添加计算列的情况 .

    Latest SOH:=
        if(
            CALCULATE(
                LASTDATE('Stock'[Date]),
                ALLEXCEPT('Stock',Stock[Category],Stock[Sub Category],Stock[Size])
                )=Stock[Date],
           'Stock'[SOH],
           BLANK()
           )
    

    从中间开始锻炼: -

    ALLEXCEPT(...)查看表中与Category,Sub Category和Size具有相同值的所有条目

    然后,CALCULATE(...)找到匹配的每个最后日期

    ='股票'[日期]然后检查此行是否是具有此类别/子类别/大小组合可找到的最高日期的行

    如果值匹配,则接通SOH的值,否则将单元格留空 .

    这是它在PowerPivot中的样子:

    PowerPivot view of table

    我不太确定你想要的日期显示 . 我刚刚添加了一个采用日期列的最后一天的度量:

    Results summarised to size

    Results summarised to sub category

    我希望这有帮助!

  • 2

    尝试使用sumx里面的列Category和Subcategory进行分组

    通过...分组 (
    类别,
    子类别,
    “SOH”,SUMX(表达式)

相关问题