Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于排除结果的PowerBI切片器_Powerbi_Powerquery_Powerbi Desktop - Fatal编程技术网

用于排除结果的PowerBI切片器

用于排除结果的PowerBI切片器,powerbi,powerquery,powerbi-desktop,Powerbi,Powerquery,Powerbi Desktop,我已经在谷歌搜索了很多搜索结果,寻找一个可能的解决方案,但我似乎无法得到我所需要的。希望这里的人能知道我在做什么 这就是问题所在。我为我的组织做各种财务报告,我们有数千个账户(比如5000个),其中一些可以被视为“异常值”。我们不想将它们从结果中排除,因为它是有效的数据,但是我们想让用户能够查看有或没有这些已识别的异常值的结果。例如,年收入增长率为8%,但不包括堆栈溢出,年收入增长率为2.5%。理想情况下,此选项(执行xStackOverflow)将是PBI中的切片器,以便用户可以控制如何查看结

我已经在谷歌搜索了很多搜索结果,寻找一个可能的解决方案,但我似乎无法得到我所需要的。希望这里的人能知道我在做什么

这就是问题所在。我为我的组织做各种财务报告,我们有数千个账户(比如5000个),其中一些可以被视为“异常值”。我们不想将它们从结果中排除,因为它是有效的数据,但是我们想让用户能够查看有或没有这些已识别的异常值的结果。例如,年收入增长率为8%,但不包括堆栈溢出,年收入增长率为2.5%。理想情况下,此选项(执行xStackOverflow)将是PBI中的切片器,以便用户可以控制如何查看结果。因为我们有多个异常值,所以我希望能够选择多个排除

在Access中,我可以通过定义一个维度“businesskickout”表来创建这个结构,该表具有排除的名称,然后在事实表上添加唯一记录的键。然后,我创建了一个select查询,它根据所选的维度业务kickout在事实表上提取键为Null的结果。我不是一个访问专家,所以这个解决方案并不优雅,但它非常简单,可以得到我需要的结果。它也适用于多重排除;i、 e.如果钥匙在任何排除项上被识别,则记录被排除

我曾尝试在PowerBI中构建相同类型的逻辑,但从我所知,PBI没有这个“null”选项。相反,它连接两个事实表,因此当我尝试“排除”记录时,结果只是排除,而不是没有排除的结果

因此,我可以使用相同的逻辑,而不是让事实表存储“kickout”键,而是存储“inclusion”键。我想我仍然可以让它在多个排除选项中工作。然而,包含的数量远远超过了排除的数量,因此我将从存储15条记录,并标识为“null”,到存储数千条包含记录。此外,由于我可能有15个排除选项,我需要为每个排除选项的每个包含存储一个记录。。。因此,我的5000个帐户列表将很快增长到近75000个

有没有人找到一种在PBI中创建切片器以排除记录的简单方法

我还想补充一点,我确实考虑过在报告中包含帐户名,以便可以取消选择,但由于要“包含”数千个帐户名,此解决方案对用户不是很友好

谢谢你的帮助!!!多谢各位

编辑: 我最初没有注意到,但是当我创建切片器PBI时,我确实向切片器添加了一个“(Blank)”选项,该选项提供空值的结果。因此,逻辑是存在的。这不是我想要的用户体验(也就是说,我必须选择空白选项而不是XCART),但是我改变了我的维度的命名,将它们标注为“包含”而不是“排除”。现在我的维度允许我包含排除,或者排除排除


仍然很好奇是否有人解决了这个问题,因为PBI似乎真的没有切片器排除结果的功能,但是我认为这种方法现在对我来说是可行的。

我认为最简单的方法是像您创建的那样维护一个排除表,然后使用左反联接将该表与您的主数据集(从后者开始)合并

左反联接将返回一个表,其中要联接的列之间不匹配。也就是说,您将得到一个不包含排除表项的表



如果需要在报告中动态执行此操作,只需设置一个具有多选和全选功能的切片器,单击全选,然后根据需要取消选择异常值。

这可能会解决当前问题,但我需要每周创建一份报告。现在,我正在Access DB上运行仪表板,但我计划在仪表板构建完成并按预期工作后,将其推送到SQL表。因此,我的目标是消除操纵数据的需要,而只是发布“新”数据。我最初没有注意到在我的切片器选项上出现的“空白”切片器,因此看起来PBI确实有一个空连接,我可能只需要创造性地重命名我的kickout维度,以便对用户更有意义。您是想完全为报告排除“kickout table”中的项目,还是只是选择?抱歉,响应延迟;假期之类的。如果我正确理解了你的问题,我想选择这样做。因此,用户可以查看总报告,然后选择一个切片器来删除帐户,或者再次单击以重新包含它。明白了。无论是将异常值写入报告还是完全过滤掉,这种方法都会产生很大的不同。