2013-07-01 88 views
0

我有一个返回两个属性,名称和总单位的数据集。我试图在数据栏上设置一个iif表达式,其中iif(field!Name.Value = "Name", field!Total.Value, 0)使用iif函数的SSRS表达式问题

这不起作用我得到一个错误rsFieldReferanceAmbiguous,这些字段引用时没有指定数据集聚合。它唯一的选项是First,但我不想得到名字,我想要栏显示基于iif表达式中的名称字段的总单位。

回答

0

rsFieldReferenceAmbiguous指的是试图匹配不在本地范围内的东西。因此你必须把它聚合起来。您可能想要这样的事情:

=Sum(IIF(Fields!Name.Value = "Name", Fields!Total.Value, 0)) 
0

您尝试使用的函数将更适合您的数据集中的计算字段。然后,您可以在报告中引用该字段。这使您可以逐行而不是按组过滤数据。

  1. 右键单击数据集并转到数据集属性。
  2. 转到字段。
  3. 点击添加,然后计算字段。
  4. 输入字段的名称,然后在此输入表达式。
0

确保您的tablix具有在属性窗格上的General - > DataSetName下指定的数据集。如果报告中有多个数据集,您需要指定您想要的数据集: (Fields!Name.Value, "NameDataSet") 如果您使用的表格,您可能需要重新分组,如果有的话如何分组数据。