September 19, 2013 at 7:12 am
Hi all,
I am trying to do an average of a calculated collumn in SSRS (matrix table), the column in question is the result of an expression =sum(Fields!Current_AR.Value) / sum(Fields!Total_AR.Value), now i want to do the average of this collumn but i cant seem to do it..
Anyone got a suggestion?
Best regards,
Daniel
September 19, 2013 at 8:09 am
Comes down to whether you want the ratio of the current_AR to total_AR at all levels or the ratio of the detail level averaged at each level. The values would be the same at the detail level but change on the summary level. Most business users want the ratio of current_AR to total_AR at all levels.
Example :
Customer [A]
Current_AR, Total_AR
12, 30
10, 50
62, 100
Customer
Current_AR, Total_AR
90, 100
The formula you have used on each detail row is =sum(Fields!Current_AR.Value) / sum(Fields!Total_AR.Value)
So this would give :
A 12 30 40.00%
A 10 50 20.00%
A 62 150 62.00%
B 90 100 90.00%
If you add a group for customer using the same formula for each column would add the group footer rows:
A 84 180 46.67%
B 90 100 90.00%
Grouping to a tablix total would add:
Total 174 280 62.14%
You may not need to use the AVG function at all.
If you were to add the additional column RATIO into the dataset below then you could use the AVG function on these values but get a different returned value within the report.
SELECT *, Current_AR / Total_AR as Ratio
FROM dbo.SourceTable
RATIO
A 12 30 40.00%
A 10 50 20.00%
A 62 150 62.00%
B 90 100 90.00%
If you add a group for customer using the same formula for each column would add the group footer rows:
A 84 180 40.67% (avg of 40.00,20.00 and 62.00)
B 90 100 90.00%
Grouping to a tablix total would add:
Total 174 280 53.00% (avg of 40.00, 20.00, 62.00 and 90.00)
Fitz
September 20, 2013 at 12:55 am
add your aggregate fields as a calculated filedS then use average function.
September 20, 2013 at 4:21 am
Hi Mark,
Not sure if i understood what you mean, let me give another go at explaining, i need to sum all the values and divide the result by the number of rows, how would it be the best way to get there?
Below some of the expressions used on the column:
Line by line expression (to obtain USD current amount for each Area and SubArea in your example customer):
=Sum(Fields!Total_AR.Value)*
IIf
(
Fields!SubArea.Value = "Unassigned",
Lookup
(
"% Current" & Fields!Area.Value & Parameters!Period.Label,
Fields!Metric.Value & Fields!Area.Value & Fields!Fiscal_Month.Value,
Fields!Target.Value,
"Target"
),
Lookup
(
"% Current" & Fields!SubArea.Value & Parameters!Period.Label,
Fields!Metric.Value & Fields!Area.Value & Fields!Fiscal_Month.Value,
Fields!Target.Value,
"Target"
)
)
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply