在Lookupset函数内为值加前后括号遇语法错误,如何解决?
SSRS LookupSet 字符串拼接语法错误修复
问题场景
原可正常运行的函数:
=join( lookupset( Fields!ID.Value, Fields!ID.Value, Fields!Name.Value, "DATASET" ), Environment.NewLine )
尝试给每个Name.Value添加前后括号时,修改后的代码触发错误[BC30201] Expression expected:
=join( lookupset( Fields!ID.Value, Fields!ID.Value, & " (" & Fields!Name.Value & ")", "DATASET" ), Environment.NewLine )
错误原因
报错源于字符串拼接语法错误:VB.NET中&用于连接两个表达式,不能以&作为拼接语句的开头。
正确写法(在LookupSet内解决)
直接移除开头多余的&,修正拼接逻辑即可:
=join( lookupset( Fields!ID.Value, Fields!ID.Value, " (" & Fields!Name.Value & ")", "DATASET" ), Environment.NewLine )
若需要括号与值紧密连接(如(张三)而非 (张三)),去掉开头的空格即可:
=join( lookupset( Fields!ID.Value, Fields!ID.Value, "(" & Fields!Name.Value & ")", "DATASET" ), Environment.NewLine )
内容的提问来源于stack exchange,提问作者knollo
相关产品推荐
相关产品推荐

