ssrs-2012 - 隐藏tablix时SSRS参数隐藏表达式错误
问题描述
我得到低于错误。当我使用隐藏表达式中的参数隐藏时。
Expression:=IIF(Parameters!BU.Value="BU5",False,True)
[The Hidden expression for the tablix ‘BU’ contains an error: Overload resolution failed because no Public '=' can be called with these arguments:
'Public Shared Operator =(a As String, b As String) As Boolean':
Argument matching parameter 'a' cannot convert from 'Object()' to 'String'. (rsRuntimeErrorInExpression)][1]
请帮助解决此问题。在此先感谢。
解决方案
看起来 BU 是一个多值参数。如果要直接将参数值与字符串进行比较,则必须将其更改为仅允许单个选择;否则,您将数组与字符串进行比较,这就是您的错误消息所指示的。
另一种选择是使用 JOIN 函数来创建选择的串联列表,以便在您的表达式中进行比较。例如,如果未在 BU 参数中选择“BK5”,则可以通过如下设置列的可见性表达式来隐藏该列:
=INSTR("|" & JOIN(Parameters!BU.Value,"|") & "|","|BK5|")=0
请记住,如果您使用此方法,最佳实践表明您应该选择一个您不希望出现在参数的可用值中的分隔符,因此在这方面您需要自担风险。
推荐阅读
- php - 具有多个层和属性的 SOAP 客户端
- javascript - 为什么javascript不能与https一起使用
- java - 如何根据 Android/Java 中的特定开始/结束编号正确生成随机整数?
- java - 在 android studio 中:如何创建两个带有引用的表?
- c# - 强制关闭后如何重用套接字?
- html - 为什么,如果我应用 display inline-block 属性,我的 HTML 元素是从底部开始的?
- excel - 如何在 VBA 公式中包含数据输入“控件”?
- javascript - 如何使我的光线投射器仅在与可见对象/实体相交时工作?
- javascript - 在没有 jQuery 的情况下将对象存储在数据属性中
- r - 如何从R中的列表中过滤唯一值