SSRS在文本框中使用Lookup时遇到的问题(未知的集合成员)
我在文本框中使用 'lookup' 函数时遇到问题。我的报表包含多个数据集,我猜测问题在于SSRS不知道应该把表达式第一部分绑定到哪个数据集,但我找不到解决方法,甚至不确定是否可能。
这是lookup语句,如果把它放到绑定到我的第一个数据集(“Building”)的表格中就能正常工作。但当把同样的语句放到文本框中时就不行。它给我报错“Unknown collection member。”
=Lookup(Fields!Construction_Code.Value,Fields!Construction_Code.Value,Fields!Value.Value, "Construction_type")
有没有办法指示第一条Construction_Code值来自于“Building”数据集?
解决方案
是的。在独立的文本框中,SSRS没有行上下文,因此 Fields!Construction_Code.Value 是模糊的,除非你明确把它限定到一个数据集。
尝试把源字段包裹在聚合函数中并指定数据集名称:
=Lookup(
First(Fields!Construction_Code.Value, "Building"),
Fields!Construction_Code.Value,
Fields!Value.Value,
"Construction_type"
)
解释:
First(Fields!Construction_Code.Value, "Building")告诉SSRS从"Building"数据集获取值。- 最后的参数 (
"Construction_type") 已经正确指定了查找数据集。
这是因为位于数据区域(表格/矩阵/列表)之外的文本框不会自动继承数据集作用域。
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。