# Getting an Average from a group summary formula

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
###### Who is Participating?

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Commented:
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 Commented:
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
Commented:
SOrry I misunderstood what you wanted.

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

mlmcc
0
Commented:
> 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

Experts Exchange Solution brought to you by

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

###### It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Crystal Reports

From novice to tech pro — start learning today.