[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 557
  • Last Modified:

Summarized a Group calculation

Crystal 9.0
I want to perform a calc (see “@Compare” formula below) on Group 4 subtotals.  I’d like to sum the result of this calc "@Compare" in the higher groups (Group 1, Group2, Group 3).
I am unable to use the Crystal’s Summary function (I assume because the result of “@Compare formula” is in a group section and not in the detail section).   Same problem with running total.   “@Compare” is not available to summarize.

@Compare formula = If column A> Column B then Column A else Column B

Example Groups and Sections
                Column ID:        A                   B                      C

Group 1 – Job  Subtotal                        Group #1 CC sum of @Compare formula      
Group 2 – CSI  Subtotal                        Group #2 CC sum of @Compare formula
Group 3 – CC   Subtotal                        Group #3 CC sum of @Compare formula
Group 4 – Cat   Subtotal                        @Compare formula
Detailed Trans  Section                   

Also - Users want to drill down to the “Detailed Trans” level
Can somebody recommend a direction?  My other attempts (in progress):
1. A subreport to summarize the “Detail Trans” section and pass Cat Subtotals from subreport to Main.    This will allow my main report’s detail section to be “Cat” thus allowing Crystal summary.
2. A formula in the detail section that summarizes amounts base on Cat value.  Link an “On Demand Subreport” if the user needs to drill down to detailed trans level.
1 Solution
WHat is the @Compare Formula?

LFreehaufAuthor Commented:
The formula (referred to as "@Compare formula")  is a simple 'if ...then'.  Using the examples above, it's  (If Column A> Column B then Column A else Column B

The actual cut and paste is
((if Sum ({@Total Estimate}, {JCT_CURRENT__TRANSACTION.Category}) > Sum ({@Total Commitment}, {JCT_CURRENT__TRANSACTION.Category})
then Sum ({@Total Estimate}, {JCT_CURRENT__TRANSACTION.Category}) else Sum ({@Total Commitment}, {JCT_CURRENT__TRANSACTION.Category}))

It takes the greater of Estimated $ vs. Commitment $ for each line in group 4.  With this formula in Group 4, I cannot perform the simple "Insert>Summary>" in higher groups.  The formula is not available for Summary via "Insert>Summary>"

This formula won't be available for summary because of the if..else.  What you can do is store the results in a variable and then show that variable at higher levels.  In simple form it would look like this:

// @Compare
shared numberVar myTotal;
numberVar thisResult;
if ColumnA > ColumnB then
   thisResult := Sum(ColumnA, GroupBy)
   thisResult := Sum(ColumnB, GroupBy);

myTotal := myTotal + thisResult;

Now in the other groups you can create a formula to show the variable value:

// @ShowValue
shared numberVar myTotal;

If you need to reset the variable simply create a new formula in the appropriate section to set it to zero.  If you want to reset at different levels you may need to use multiple variables.


Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now