对于您的特定要求,您可以在图表上设置过滤器,如下所示:
表达式在哪里:
=IIf(
(Fields!Owner.Value <> "A" and Fields!Owner.Value <> "B")
or (Fields!Owner.Value = "A" and Fields!Ver.Value = 1.1)
or (Fields!Owner.Value = "B" and Fields!Ver.Value = 1.1)
or (Fields!Owner.Value = "B" and Fields!Ver.Value = 1.2)
, "INCLUDE"
, "EXCLUDE"
)
这给出了您需要的结果:
但是,这根本不可扩展,因为随着存在更多要求,您将不得不使表达式变得越来越复杂 - 正如其他当前答案中所提到的,如果可能的话,可能值得考虑在基于参数输入的存储过程中应用过滤。
但是,如果您有非常具体的要求,上述应该没问题。
评论后编辑
要显式排除而不是包含,您可以使用完全相同的东西,只需翻转逻辑即可。
假设您要排除以下组合:
A -> 1.2
A -> 1.3
B -> 1.3
您只需将表达式更改为以下内容:
=IIf(
(Fields!Owner.Value = "A" and Fields!Ver.Value = 1.2)
or (Fields!Owner.Value = "A" and Fields!Ver.Value = 1.3)
or (Fields!Owner.Value = "B" and Fields!Ver.Value = 1.3)
, "EXCLUDE"
, "INCLUDE"
)
这给出了与上述相同的结果。