基于SSRS报告中参数选择的隐藏/显示列值

时间:2017-01-06 09:26:42

标签: ssrs-2008

在我的SSRS报告中,我有一个包含10列的Tablix。一列名为“field_type”,有三个值:银行,医疗保健和保险。

我正在使用一个参数,其值包含0或1.我的要求是如果参数值为1,那么我们必须在报告中将field_type值显示为保险。如果参数值为0,那么field_type值应该是报告中的银行和医疗保健。

如何编写表达式来解决这个问题?有人可以向我推荐一个吗?

由于

1 个答案:

答案 0 :(得分:0)

您需要添加一些逻辑,以便在参数设置为1时以一种方式过滤数据,在参数为0时以另一种方式过滤数据。

您可以在查询或数据集中过滤数据。

如果您在查询中过滤而不是数据集,报告通常会运行得更快,但并不总是可行。

SQL:

在哪里(     (field_type IN('insurance')AND @PARAMETER = 1)     要么     (field_type IN('banking','healthcare')AND @PARAMETER = 0)     )

SSRS数据集:

表达:

=IIF( 
    (Fields!field_type.Value = "insurance" AND Parameters!PARAMETER.Value = 1)
    OR (
        (
        Fields!field_type.Value = "banking" 
        OR
        Fields!field_type.Value = "healthcare" 
        )
        AND Parameters!PARAMETER.Value = 0)
    , 1, 0)

<强>类型

整数

<强>值

1

enter image description here