SSRS从总计中排除隐藏的行值

时间:2014-01-24 03:48:24

标签: reporting-services ssrs-2008

我在SQL报告服务报告中有一个名为“Total”的列。

生成报告时,我隐藏了一些符合某个公式的行,

但计算隐藏行值的总和也在计算。 我可以知道如何从总值中排除隐藏的行值吗?

1 个答案:

答案 0 :(得分:4)

您有两种选择:

  • 应用您用于将行隐藏到聚合表达式的相同显示/隐藏逻辑。

  • 在表级应用过滤器。

举个例子,假设我有一些简单的数据和相关的表格:

enter image description here

enter image description here

enter image description here

现在,假设我们要隐藏所有具有负值的行 - 我们可以通过将行隐藏属性设置为:

来执行此操作
=IIf(Fields!val.Value > 0, False, True)

删除该行但不会更改总数,即您所看到的内容:

enter image description here

我们需要对Sum表达式应用相同的显示/隐藏逻辑:

=Sum(IIf(Fields!val.Value > 0, Fields!val.Value, Nothing))

现在总体看起来更好:

enter image description here

退一步,如果要隐藏行并更改总计,为什么不应用过滤器;在上面的例子中,这将是:

enter image description here

无需在行或总级别显示任何显示/隐藏逻辑,即可获得相同的结果。

根据表达式的复杂程度,这最后一个选项可能不适用,但如果可能,我似乎有点整洁。