SSRS报告中的查找功能

时间:2013-06-26 11:36:29

标签: reporting-services ssrs-2008 lookup

我有一个数据集Dataset1,我正在显示基于分组的数据。数据就像这样

   CityColumn      CountColumn
   City1              5
   City2              3

以上数据的查询如下:

select count(*) as "CountColumn" from City group by CityColumn

在上面的数据集中,我使用CityColumn上的分组进行了计数。

现在我已经创建了另一个数据集数据集2,其中数据就像这样

  CityColumn
   City1
   City2
   City3

现在在dataset2中我添加了一个名为TotalCount的计算字段并使用了Lookup Function这个函数是这样的

=Lookup(CityColumn, CityColumn, CountColumn, "Dataset1")

但它给我一个像

这样的错误
  

查找包括聚合,rownumber,runningvalue,previous或lookup函数。无法在计算字段中使用聚合,rownumber,runningvalue,previous或lookup函数。

2 个答案:

答案 0 :(得分:4)

查找函数的前两个值必须引用列中的标识值。在您的情况下,城市名称必须在两个数据集中。把它想象成一把钥匙。第三个值是您要从第二个数据集中显示的值。所以看起来应该更像这样:

=Lookup(Fields!CityColumn.Value, Fields!CityColumn.Value, Fields!CountColumn.Value, "Dataset1")

确保Dataset1具有您尝试查找的名为CountColumn的列。请记住,这只会查找单个行,而不是聚合。如果您想使用聚合,可以在查找函数之上执行此操作。

编辑:

由于计算字段中不允许使用查找功能,因此您需要在饼图中的值表达式中使用它。它应该是这样的:

enter image description here

请注意,查找函数必须像汇总函数一样在汇总函数中才能用作图表值。

答案 1 :(得分:1)

只需将表达式添加到报表的详细信息行中的空列中,而不是将其添加为DataSet中的计算字段。