首页 > 解决方案 > 基于参数的SSRS分组

问题描述

我正在尝试根据参数对报告进行分组,但在尝试运行报告时出现以下错误

tablix“Tablix1”的 GroupExpression 包含错误:[BC30311]“Microsoft.ReportingServices.ReportProcessing.ReportObjectModel.Parameter”类型的值无法转换为“字符串”

到目前为止我得到的表达是

=IIF(Parameters!ParameterName = "Name", Fields!Field1.Value 
        AND Fields!Field2.Value
        AND Fields!Field3.Value,
    Fields!Field2.Value 
        AND Fields!Field3.Value
    )

我期望上面做的是如果 Parameter = Name 然后将 3 个不同的字段分组,否则如果参数不是 Name 则仅分组 2 个字段,这 2 个字段也用于 IFF 语句的前半部分

我想这是一个数据类型问题,如果是这样,那么理想情况下我想在 SSRS 中而不是在 SQL 存储过程中修复它,但如果不是,那么在 SQL 中修复它并不是世界末日

这可能是一个非常简单的问题,但对 SSRS 来说却很新

标签: reporting-servicesssrs-2012ssrs-tablix

解决方案


尝试这个 ...

=IIF(Parameters!ParameterName = "Name", cstr(Fields!Field1.Value) + 
               cstr(Fields!Field2.Value) + cstr(Fields!Field3.Value),
               cstr(Fields!Field2.Value ) + cstr(Fields!Field3.Value)
)

推荐阅读