使前几行对切片器Power BI无响应

时间:2020-09-30 13:24:33

标签: powerbi dax

我有一个如下数据:

  Brands  Sales Category Index
  Brand1    588        A     1
  Brand2    846        A     2
  Brand3    827        A     3
  Brand4    951        A     4
  Brand5    673        B     5
  Brand6    637        B     6
  Brand7    575        B     7
  Brand8    995        B     8
  Btand9    737        C     9
 Brand10    661        C    10
 Brand11    729        C    11
 Brand12    789        C    12
 Brand13    836        C    13

问题陈述:

我试图将Category用作切片器。但是我希望与选择的切片器无关,表视图中都将显示类别A的行。

示例:假设如果在slicer中选择了Category B,那么在这种情况下,表格应返回所有行,直到第8级为止。

下面是选择类别C时所需输出的示例:

enter image description here

如您所见,可视表同时具有类别A和类别C。

类似地,当同时选择B和C时,我应该能够显示所有类别(A,B和C)。

尝试了什么: 我在考虑是否可以使用条件DAX,该条件DAX对切片器中的选定值返回1,并将rest标记为0,因此可以将其用作可视过滤器并过滤出0。我尝试了Filter与{{ 1}}和in Filters,但没有用。甚至下面的度量也返回所有行,而不是SELECTCOLUMN

Selected values|| category="A"

我也尝试过类似的事情:

test1 = CALCULATE(MIN('Table'[Index]),FILTER(ALLEXCEPT('Table','Table'[Brands]),'Table'[Category]=SELECTEDVALUE('Table'[Category]) || 'Table'[Category]="A"))

但这将所有结果设为1,对于不符合条件的行则不给出0(请注意,我在此处阻止了切片器的交互)

enter image description here

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

首先,您需要分离切片器表,因为将值保留在无法达到要求的同一表中。您可以使用以下代码创建自定义表格-

考虑您的基本表名称销售

让我们创建自定义表格类别列表

的销售额和类别列表

之间没有任何关联
category list = 
SELECTCOLUMNS(
    sales,
    "Category",sales[Category]
)

现在,使用新的自定义表类别列表创建切片器,并在 Measure -

下创建此切片器
is filter = 
if(
    MIN(sales[Category]) = "A",
    1,
    if (
        MIN(sales[Category]) IN VALUES('category list'[Category]),
        1,
        0
    )
)

以下是选择 C 时的示例输出-

enter image description here