根据参数值隐藏行
Hide row based on parameter value
如何在 SSRS 2012 中根据所选参数简单地隐藏行。
我的 LineGuid 参数有两个值:Earthquake
和 Wind
如果选择 'Wind' 参数,我想隐藏该行,因为它显示地震的总和值。
所以我在 Row Visibility
中输入了一个表达式,但它给我一个错误提示:"Overload resolution failed because no Public '=' can be called..."
我也尝试传递 Value
(GUID),而不是 Label
,但给了我同样的错误。
我在这里错过了什么?
尝试使用实际参数 .value
而不是 .label
名称
您已将线路 GUID 参数设置为接受多个值。这些值作为数组传入,这就是您在错误消息中看到 String()
语法的原因。一种选择是将其更改为不接受多个值。另一种选择是像这样使用第一个选择的值:
=Parameters!lineGuid.Value(0)
注意表达式末尾对数组索引的引用。
如果您想合并所有值,您也可以像这样连接它们:
=Join(Parameters!lineGuid.Value, ", ")
这会将数组中的值连接成逗号分隔的字符串。
将所有参数连接在一起,然后检查 Wind 是否是字符串的一部分。
= IIF(InStr(Join(Parameters!lineGuid.Label,","),"Wind") > 0,True,False)
在我的例子中,我需要在选择“Earthquake
”参数时显示行,并且在选择两个参数时也需要显示行:Earthquake
和 Wind
。
这个表达式使它起作用:
=IIF(InStr(JOIN(Parameters!lineGuid.Label,","),"E")
OR
InStr(JOIN(Parameters!lineGuid.Label,","),"W")
AND
InStr(JOIN(Parameters!lineGuid.Label,","),"E")>0,False,True)
如何在 SSRS 2012 中根据所选参数简单地隐藏行。
我的 LineGuid 参数有两个值:Earthquake
和 Wind
如果选择 'Wind' 参数,我想隐藏该行,因为它显示地震的总和值。
所以我在 Row Visibility
中输入了一个表达式,但它给我一个错误提示:"Overload resolution failed because no Public '=' can be called..."
Value
(GUID),而不是 Label
,但给了我同样的错误。
我在这里错过了什么?
尝试使用实际参数 .value
而不是 .label
名称
您已将线路 GUID 参数设置为接受多个值。这些值作为数组传入,这就是您在错误消息中看到 String()
语法的原因。一种选择是将其更改为不接受多个值。另一种选择是像这样使用第一个选择的值:
=Parameters!lineGuid.Value(0)
注意表达式末尾对数组索引的引用。
如果您想合并所有值,您也可以像这样连接它们:
=Join(Parameters!lineGuid.Value, ", ")
这会将数组中的值连接成逗号分隔的字符串。
将所有参数连接在一起,然后检查 Wind 是否是字符串的一部分。
= IIF(InStr(Join(Parameters!lineGuid.Label,","),"Wind") > 0,True,False)
在我的例子中,我需要在选择“Earthquake
”参数时显示行,并且在选择两个参数时也需要显示行:Earthquake
和 Wind
。
这个表达式使它起作用:
=IIF(InStr(JOIN(Parameters!lineGuid.Label,","),"E")
OR
InStr(JOIN(Parameters!lineGuid.Label,","),"W")
AND
InStr(JOIN(Parameters!lineGuid.Label,","),"E")>0,False,True)