SSRS总和最大值

时间:2014-11-18 22:15:28

标签: reporting-services sql-server-2008-r2

我有一个SSRS报告,看起来像这样(包括其他列,例如销售),行按地区和位置分组。

SSRS report

位置的目标是每个位置的最大值,因为在我的查询中,目标显示在我正在汇总的每个销售记录上。

=Max(Fields!goal.Value)

区域的目标是该区域组中每个位置的最大值之和。

=Sum(max(Fields!goal.Value, "LocationName"), "region")

前两个没有问题,但是我很难获得报告的总计,这将是每个地区总数的总和。

=Sum(Fields!goal.Value, "region")

我无法引用区域组,因为总数超出了该组 - “对于聚合函数无效的范围参数”。在这种情况下,如何获得每个区域的总和(7,000)?

2 个答案:

答案 0 :(得分:8)

在总文本框,区域和总计中,您可以使用相同的表达式:

=Sum(max(Fields!goal.Value, "LocationName"))

因为表达式是在文本框的当前范围中计算的,所以在区域组级别,这将聚合所有<{1}}目标值<该区域中的em> LocationName 组,在总计级别,这将聚合所有中所有 LocationName 组中的Max目标值区域。

您可以看到这一点。使用如下数据:

enter image description here

(如果最终总数是正确的话,我已经将行增加了一倍)

和一个简单的表格:

enter image description here

相同的表达式在 Region Grand Total 范围中提供了正确的结果:

enter image description here

答案 1 :(得分:0)

你试过= Max(Fields!goal.Value)?如果您需要未展开的总计,这应该工作。这是关于Adding Grouping and Totals的一篇很棒的MSDN文章。以下是从article获取的图像,其中显示了如何设置它。

enter image description here

渲染:

enter image description here