按索引计算的累计总和,范围仅限于表中的单个值

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

我使用以下代码计算累积和,效果很好:

CumulativeSum =
VAR CurrentIndex = 140304
VAR RunningTotal=
CALCULATE(
    SUM(FactTable[ColumnA]),
    FILTER(ALLSELECTED(DimIndex),
    DimIndex[IndexKey] <= MAX (DimIndex[IndexKey])
    )
)
RETURN
IF (
    MAX(DimIndex[IndexKey]) <= CurrentIndex, RunningTotal, BLANK()
)

(对于大于或等于 CurrentIndex 的索引,此测量产生的结果将被替换为空白)

这是结果(深蓝色是来自另一个度量的非累积值): enter image description here

我在存储 CurrentIndex 的数据模型中有一个包含单列和单行的表。当我尝试使用以下 dax 度量从此表中获取“140303”时,视觉效果会发生变化并且不会显示所需的结果:

CumulativeSum =
VAR CurrentIndex = MAX(IndexTable[CurrentIndex])
VAR RunningTotal=
CALCULATE(
    SUM(FactTable[ColumnA]),
    FILTER(ALLSELECTED(DimIndex),
    DimIndex[IndexKey] <= MAX (DimIndex[IndexKey])
    )
)
RETURN
IF (
    MAX(DimIndex[IndexKey]) <= CurrentIndex, RunningTotal, BLANK()
)

结果如下: enter image description here

如何从数据模型中的表中获取 CurrentIndex 的值并生成上一个视觉效果?

dax cumulative-sum
1个回答
0
投票

通过向 DAX 度量添加简单的 ALL,我修复了 CurrentIndex 的上下文,问题得到了解决。

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