0

我有一个简单的问题。当我过滤不存在​​的值时,我的 DAX 度量似乎无法正常工作。以下是一些细节:

表:第 1 列:A、A、A、A、A、B、B、B、B

第 2 列:1,2,3,4,5,1,2,3,5

度量=计算(countrows(table),allexcept(column1))

当我按 column1 过滤时 Card Visual 返回正确的行数(过滤窗格中的任何值)

但是,当我按 column2 =“4”和 Column1 =“B”(在过滤窗格中)过滤时,它会返回错误的行数。似乎它应该按 column2 过滤,除非我专门为 value = "4" 过滤器。然后它在卡片视觉中给出“空白”结果值。

任何想法为什么?

这是屏幕。我想用“4”填充那个空白单元格(在单表数据模型中。在此处输入图像描述

4

2 回答 2

0

在你的情况下,你不需要在你的度量中添加allexcept。下面的代码会很好。

TestMeasure = countrows(Test_Data)

PFB 截图 强文本

于 2021-07-13T15:11:09.233 回答
0

我希望你有一个如下的数据模型

表名 _dim1

可乐
一个
C

表名 _dim2

colB
1
2
3
4
5

表名_fact

可乐 colB
一个 1
一个 2
一个 3
一个 4
一个 5
1
2
3
5
C 2
C 3

DM

如果你有这个,你可以通过以下措施到达你需要的地方

Measure3 =
CALCULATE ( COUNTROWS ( _fact ), ALL ( _dim2[colB] ), VALUES ( _fact[colA] ) )

Measure9 =
VAR _1 =
    MAX ( _dim2[colB] )
VAR _2 =
    CALCULATE (
        MAXX (
            FILTER ( _dim2, _dim2[colB] <= _1 ),
            LASTNONBLANKVALUE ( _dim2[colB], [Measure3] )
        ),
        ALL ( _dim2[colB] )
    )
RETURN
    _2
    
Measure10 =
VAR _1 =
    MAX ( _dim2[colB] )
VAR _2 =
    CALCULATE (
        MAXX (
            FILTER ( _dim2, _dim2[colB] > _1 ),
            FIRSTNONBLANKVALUE ( _dim2[colB], [Measure3] )
        ),
        ALL ( _dim2[colB] )
    )
RETURN
    IF ( ISBLANK ( [Measure9] ) = TRUE (), _2, [Measure9] )

解决方案

我认为您无法从如下表中到达这里

可乐 colB
一个 1
一个 2
一个 3
一个 4
一个 5
1
2
3
5
C 2
C 3
于 2021-07-13T19:21:46.580 回答