如何将列(values() 函数)的值作为列表输出到 DAX for Power BI 中?



我使用 Power BI 为大型企业客户端创建报表和视觉对象。

我的一位客户提出了一个有趣的请求:他们希望能够查看应用于给定报告的所有筛选器的摘要。我使用ISFILTERED()函数创建了一个卡片视觉对象,其中列出了筛选的维度,但他们希望能够看到正在显示哪些值。当他们只对一个值进行切片或过滤时,这工作得很好,但是当选择多个值时,我如何显示?我的 DAX 如下:

Applied Filters = 
var myvalues = VALUES(mytable[dimension_column])
return
IF(ISFILTERED(mytable[dimension_column]) = FALSE(),
"Not filtered", 
"Column Name:" & UNICHAR(10) & mylist)

当切片器中仅选择一个值时,输出为:

Column Name: 
Selected Value

显然,当在切片器中选择多个值时,变量mylist将具有多个值,并且函数将失败。我的问题是,如何将列myvalue转换为 DAX 中的列表,以便我可以输出每个值?

我想要得到的是:

Column Name: 
Selected Value1,
Selected Value2,
etc.

谢谢!

一种可能性是将所有值连接成一个字符串。

例如,将mylist替换为字符串

CONCATENATEX(VALUES(mytable[dimension_column]), mytable[dimension_column], UNICHAR(10))

实际上只返回度量值的单个值,但它看起来像一列。

另一种方法是,而不是使用卡片,只需创建一个仅具有值mytable[dimension_column]的表视觉对象。此表将在您清除切片机时自动过滤。

最新更新