8
votes

I have an SSRS report that looks like this (with additional columns such as sales) with rows grouped by region and location.

SSRS report

The goal for the locations is the max for each location as in my query the goal appears on each sales record that I'm summing.

=Max(Fields!goal.Value)

The goal for the regions is the sum of the max for each location in that region group.

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

Those first two are no problem, but I'm having difficulty getting the grand total for the report which would be the sum of each region total.

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

I can't reference the region group as the total is outside that group - "scope parameter that is not valid for an aggregate function". How do I get the sum of each region (7,000) in this instance?

2

2 Answers

9
votes

In both of the total textboxes, region and Grand Total, you can use the same expression:

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

Because the expression is calculated in the current Scope of the textbox, at the Region Group level this will be aggregating the Max goal value in all LocationName groups in the region, and at the Grand Total level this will be aggregating the Max goal value in all LocationName groups in all regions.

You can see this in action. With data like:

enter image description here

(I've doubled up the rows to make it obvious if the end totals are correct)

and a simple table:

enter image description here

The same expression gives the correct result in both the Region and Grand Total Scope:

enter image description here

0
votes

Have you tried =Max(Fields!goal.Value) ? If you need the unscoped grand total this should work. Here is a great MSDN article on Adding Grouping and Totals. Below is an image taken from that article that shows how to set it up.

enter image description here

Renders:

enter image description here