x
Solved

# Getting an Average from a group summary formula

Posted on 2012-04-05
Medium Priority
292 Views
I have a report that is grouped by Department which lists employee production metrics and hours worked.  I use a simple formula to generate their work output, known as Lines Per Hour, which is essentially Lines/Hour just as it reads.  For the Department footer I have a subtotal which has the Lines/Hour for the department and use a similar formula to reach that number.  I would like to also generate an Average Lines/Hour but I am unable to summarize a summary field due to the way Crystal processes the report.

I understand there is some sort of two pass system to crunching formulas in Crystal but never having dealt with the "second pass" I'm a little unsure how to proceed with doing this.  Any help would be appreciated.

Thanks,
SPAR
0
Question by:StrawsPulledAtRandom
• 2

LVL 101

Assisted Solution

mlmcc earned 1000 total points
ID: 37814702
It isn't the two-pass method just that summarizing a summary in most cases doesn't make sense

You can use the same formula in the report footer.
If that doesn't give what you want then try this

DeclareVariables
WhilePrintingRecords;
Global NumberVar intCount;
Global NumberVar totalAvgLinesPerHour;
""

In the group footer add a formula
CalcTotal
WhilePrintingRecords;
Global NumberVar intCount;
Global NumberVar totalAvgLinesPerHour;
intCount := intCount + 1;
totalAvgLinesPerHour := totalAvgLinesPerHour + {YourAverageFormula};
""

In the report footer
DispAverage
WhilePrintingRecords;
Global NumberVar intCount;
Global NumberVar totalAvgLinesPerHour;
If intCount = 0 then
0
Else
totalAvgLinesPerHour / intCount

mlmcc
0

Author Comment

ID: 37816146
This works for a grand total but it seems to just give me a running total for the group totals which is where i need to average.  The grand total average isn't really relative to this situation as each dept. is completely different sets of work.  I'm looking to find the departmental average as a sort of rough guideline for what the department does on a daily basis.

Basically the report works like this:

Details - suppressed
Group 1 Footer - Displays grouped department totals, need the average lines per hour to appear here
Report Footer - Grand totals for relevant things like orders, lines, packages, etc

Thanks for your help thus far!
0

LVL 101

Expert Comment

ID: 37818168
SOrry I misunderstood what you wanted.

If you could do it, what is the formula for the average you need?

mlmcc
0

LVL 35

Accepted Solution

James0628 earned 1000 total points
ID: 37818422
> I use a simple formula to generate their work output, known as
> Lines Per Hour, which is essentially Lines/Hour just as it reads.

Does that formula use summaries, or just detail fields?

If it uses detail fields, it seems like you could just do an average on that.

If it uses summaries, then maybe you can get what you want with some changes to mlmcc's suggestion.  I'm doing some guessing here, so this is something of a shot in the dark.

Keep the first formula (DeclareVariables) in the report header.

Create a new formula like the following (call it whatever you like) and put it in the group header, to reset the variables for each new group (department):

WhilePrintingRecords;
Global NumberVar intCount;
Global NumberVar totalAvgLinesPerHour;
intCount := 0;
totalAvgLinesPerHour := 0;
""

Move the second formula (CalcTotal) from the group footer to the detail section.  Replace {YourAverageFormula} with your "Lines Per Hour" formula.

Move the final formula (DispAverage) from the report footer to the group footer.

With a bit of luck, maybe that will give you what you want.  Otherwise, we'll probably need to know more about your "Lines Per Hour" formula, and exactly what you need from that.

James
0

## Featured Post

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.