计算表的动态筛选不适用于 Power BI 中的 SELECTEDVALUE(切片器)

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

你们认为如果我为在计算表度量中用作 VAR 的切片器提供动态值,为什么下面的代码不起作用?

更新: 该计算适用于硬编码索引(如 1.151),但如果使用切片器和动态度量则不会 SelectedPowerIndex = (SELECTEDVALUE(powerIndexes[pt_index]).

我分两步创建了一个计算表。代码示例只是一个简短的过滤,产生了相同的问题。

计算表很快 (1) CALCULATETABLE( SELECTCOLUMNS( 最后使用 selected_index 变量,(2) GROUPBY( 使用步骤 1 中创建的表中的 X 行聚合。

结果是一个 3 列表,显示与索引给出的分组行一样多的行。例如,索引为 1.151,如果硬编码则有效,如果动态则无效。

如果我使用dimension-tablepowerIndexes)的切片器选择1.151,则不会显示计算表。 切片机还可以,如果选择切片机,卡片上显示的是1.151。

产生相同问题的简短示例代码 第二个没有返回任何内容,但是表中的 16 行数据为 1.151。


thisWorks= 
VAR filtered_table = 
    FILTER(
        globalDatas,
        globalDatas[pt_index] = 1.151
    )
RETURN filtered_table

thisNotWorks= = 
VAR selected_index = [SelectedPowerIndex]
VAR filtered_table = 
    FILTER(
        globalDatas,
        globalDatas[pt_index] = selected_index
    )
RETURN filtered_table

我使用 SelectedPowerIndex = SELECTEDVALUE(powerIndexes[pt_index]) powerIndexes 是在 Power Query 中根据 globalDatas 表的 pt_index 列创建的单列表,并且在 Power BI 中 powerIndexes 和 globalDatas 之间存在一对多关系。

应该可以正常工作。该代码是一个计算表,但我用普通的 FILTER 函数重写了它,结果没有任何结果。

powerbi dax powerquery data-analysis powerbi-desktop
1个回答
0
投票

计算表不适用于切片器。计算表在刷新时计算。

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