在SSRS中按多值参数过滤

时间:2018-10-08 03:07:14

标签: reporting-services

我需要基于多值参数过滤我的报告(在报告本身中而不在数据库端)

我尝试了

Fields!MyField.Value IN Parameters!MyParm.Value

Fields!MyField.Value IN Join(Parameters!MyParm.Value, ",")

Fields!MyField.Value = Parameters!MyParm.Value

Fields!MyField.Value = Join(Parameters!MyParm.Value, ",")

Fields!MyField.Value LIKE Parameters!MyParm.Value

Fields!MyField.Value LIKE Join(Parameters!MyParm.Value, ",")

无效

该怎么做?!

在过滤器屏幕中有IN enter image description here

3 个答案:

答案 0 :(得分:1)

有一些选择。我确实认为最简单的方法与您之一最接近:

Fields!MyField.Value IN (@ParamNameHere)

请参见https://www.mssqltips.com/sqlservertip/2866/sql-server-reporting-services-using-multivalue-parameters/

答案 1 :(得分:1)

“,” + join(Parameters!ParamNameHere.Value,“,”)像“ ,” + cstr(Fields!myValue.Value)+“,

答案 2 :(得分:-1)

如果它不起作用,您可以尝试构建稍微不同的过滤器。添加以下过滤器。只需将Values替换为您的参数值即可:

'Expression
=Fields!MyField.Value = "Value1" Or Fields!MyField.Value = "Value2"
'Format
Boolean
'Value
True

现在,它在Tablix中仅显示Value1Value2