ALLEXCEPT函数不适用于过滤器

时间:2018-07-17 20:22:57

标签: powerbi dax

我想计算每个报告的平均报告执行时间。我创建了平均执行时间的度量。

AverageExecutionTime = CALCULATE(AVERAGE('Long Running Report'[TotalTime]),ALLEXCEPT('Long Running Report','Long Running Report'[ReportName]))

数据有一个称为ReportPath的列,我正在将其用作过滤器。当我不对ReportPath进行过滤时,度量显示每个报告的正确平均值。

enter image description here

当我在ReportPath上进行过滤时,它显示了错误的值。

enter image description here

预期结果如下:

enter image description here

我知道这是由于ALLEXCEPT(ReportName)而发生的,但是有没有办法包括过滤器。在任何情况下,仪表板上都可能有多个过滤器,应该显示正确的平均值。

我正在使用DirectQueryMode,不能使用FILTER。

1 个答案:

答案 0 :(得分:0)

尝试此措施:

AveExecTime = CALCULATE(AVERAGE(LongRR[TotalTime]),
                  FILTER(ALLSELECTED(LongRR),
                      LongRR[ReportName] IN VALUES(LongRR[ReportName])))

ALLSELECTED函数保留切片器设置,然后我们说ReportName必须在当前过滤器上下文中(等于该表行中的值)。