0

我有一份报告,其中显示了一个完整的原始数据表。在输入此报告之前,父报告会要求您选择“服务”和“部门” 根据您从父报告中选择的服务/部门,此 RAW 数据将被过滤以显示相关数据。

直截了当,而且效果很好,很棒。

我现在有一个新要求。如果选择的服务等于“服务 X”,我需要在该服务、部门再次过滤数据,还需要在他们的“团队”上添加额外的过滤器。

这样数据也将在团队与运行报告团队的用户匹配的地方被过滤。

我已经创建了一个数据集,它返回运行报告“团队”的用户以及一个名为“团队”的新参数,默认为运行报告的用户 AD 编号

新的要求是,如果是Service = X,则过滤部门和用户“团队”上的数据,如果服务不等于 X,则什么也不做。

我想我需要更改 Tablix 属性的过滤器部分,但不确定我需要在表达式、运算符、值中添加什么

到目前为止,我已经尝试=IIf(Fields!Service.Value = "Service X", Fields!Team.Value, nothing)在表达式中,将运算符设置为In并尝试从存储当前用户“团队”的新数据集中过滤“团队”,但它不起作用。

有没有人有什么建议?

4

1 回答 1

0

For these sorts of conditional filters I've had best results with using the IIf statement (or whatever) to return a string and filtering based on that, e.g. something like:

=IIf(Parameters!Service.Value <> "Service X" or Parameters!Team.Value = Fields!Team.Value
    , "Include"
    , "Exclude")

Then you can set the Operator to = and the filter value to Include. Just seems to a bit more robust in my experience.

Reading over this, you could even set the IIf statement up as a Calculated Column in the dataset and filter on that.

于 2013-02-28T14:15:10.423 回答