2

我正在尝试在 ssrs 中使用 lookupset 函数,但我不断收到此错误:

[rsLookupOfInvalidExpressionDataType] The Value expression for the textrun ‘Textbox46.Paragraphs[0].TextRuns[0]’ uses a lookup function with an expression that returned a data type that is not valid for the lookup function. The data type must be an RDL Variant type.

我的第一个数据集如下所示:

Student Name      | PID
Anakin SkyWalker  | 1
Obi-Wan Kenobi    | 2

我的第二个数据集(名为 Awards)如下所示:

PID  | Xtrnl_Award_Type
2    | BA

我使用的表达式是:

=Join(LookupSet(Fields!PID.Value, Fields!PID.Value, Fields!Xtrnl_Award_Type_Code, "Awards"), ",")    

如果此人在第二个数据集中没有条目,则一切正常。但如果他们这样做了,我的专栏只会显示#Error,而不是用逗号分隔的奖项列表。有问题的字段是 varchar,如果有帮助的话。我不明白为什么会出现错误,也不明白如何才能看到表达式返回的内容。任何人都可以帮忙吗?

4

1 回答 1

5

看起来你错过了LookupSet函数的第三个参数:

代替

=Join(
   LookupSet(
      Fields!PID.Value,
      Fields!PID.Value,
      Fields!Xtrnl_Award_Type_Code,
      "Awards"),
   ",")

尝试这个:

=Join(
   LookupSet(
      Fields!PID.Value,
      Fields!PID.Value,
      Fields!Xtrnl_Award_Type_Code.Value,
      "Awards"),
   ",")

(实际上,即使那样,字段名称也与您在示例中显示的名称不匹配。您可能需要将参数更改为Fields!Xtrnl_Award_Type.Value

于 2013-10-16T15:22:29.370 回答