You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SSRS固定源表达式LOOKUP函数返回#Error问题求解

SSRS LOOKUP函数返回#Error的原因及解决方案

报错原因

  • 数据类型不匹配:LOOKUP要求查找源值和目标匹配字段的数据类型完全一致,你给出的查找值是字符串类型的"Score1",如果数据集中RowName字段的实际数据类型为非字符串(比如数值、字符集不兼容的字符串类型),会触发类型匹配错误。
  • 返回值未做显式类型转换:LOOKUP函数默认返回Object泛类型,SSRS渲染时如果无法自动完成类型到报表文本的转换,就会抛出#Error异常。
  • 命名不匹配:SSRS对数据集名称、字段名称的拼写和大小写完全敏感,若你写的ScoreQuotient数据集名、RowName/RowDecile字段名和实际数据集定义中的拼写、大小写不一致,也会触发报错。

修复方案

  1. 首先核对数据集名称、字段名称的拼写和大小写,确保和数据集定义完全一致。
  2. 对查找值、匹配字段、返回值都做显式类型转换,确保类型统一,修改后的表达式如下:
=CStr(LOOKUP(CStr("Score1"), CStr(Fields!RowName.Value), CStr(Fields!RowDecile.Value), "ScoreQuotient"))
  1. 如果调整后依然报错,可以先在绑定了ScoreQuotient数据集的表格中直接输出=Fields!RowName.Value和=Fields!RowDecile.Value,确认字段本身可以正常读取,排除数据集查询错误的问题。

内容的提问来源于stack exchange,提问作者JackR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 13:45:03