使用iif函数的SSRS表达式问题

时间:2013-07-01 17:54:38

标签: reporting-services ssrs-2008 iif-function

我有一个数据集,它返回两个属性,一个名称和一个总单位。我想在iif(field!Name.Value = "Name", field!Total.Value, 0)

的数据栏上设置一个iif表达式

这不起作用我收到rsFieldReferanceAmbiguous的错误,字段引用而没有指定数据集聚合。它作为聚合的唯一选项是First,但我不想得到第一个名字,我希望条形图显示基于名称字段的总单位{{1表达。

3 个答案:

答案 0 :(得分:0)

rsFieldReferenceAmbiguous指的是尝试匹配不在本地范围内的内容。因此,您必须聚合它。你可能想要这样的东西:

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

答案 1 :(得分:0)

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

  1. 右键单击数据集,然后转到“数据集属性”。
  2. 转到菲尔兹。
  3. 单击“添加”然后单击“计算字段”。
  4. 输入字段的名称,然后输入表达式。

答案 2 :(得分:0)

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