如何根据SSRS 2012中的选定参数隐藏行。
我的LineGuid参数有两个值:Earthquake
和Wind
如果选择'Wind'参数,我想隐藏行,因为它显示了Earthquake的总和值。
所以我在Row Visibility
中输入一个表达式,但它给出了一个错误说:“重载解析失败,因为没有公共'='可以调用......”
我还尝试传递Value
(GUID),而不是Label
但是给了我同样的错误。
我在这里缺少什么?
答案 0 :(得分:1)
您将Line GUID参数设置为接受多个值。这些值作为数组传入,这就是您在错误消息中看到String()
语法的原因。一种选择是将其更改为不接受多个值。另一种选择是使用第一个选择的值,如下所示:
=Parameters!lineGuid.Value(0)
请注意表达式末尾对数组索引的引用。
如果您想要组合所有值,您也可以像这样加入它们:
=Join(Parameters!lineGuid.Value, ", ")
这会将数组中的值连接成逗号分隔的字符串。
答案 1 :(得分:1)
将所有参数加在一起,然后检查Wind是否是字符串的一部分。
= IIF(InStr(Join(Parameters!lineGuid.Label,","),"Wind") > 0,True,False)
答案 2 :(得分:0)
在我的情况下,我需要在选择“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)
答案 3 :(得分:-1)
尝试使用实际参数.value
而非.label
名称