Group #3 would automatically be nested with Group #2. To get this kind of format, you could use subreports for "Groups" 2 and 3, placing them in separate Group #1 footer sections, and linking them to the main report on the Group #1 field.
I am unfortunately unable to use sub reports because I am using a trimed down version of cyrstal reports. The version I am using is routed through Rational Clearquest. So I will still need to find another way around this.
As long as Group #2 and #3 are based on separate fields, I don't believe there is another way of accomplishing this. If they are, in fact, two instances of the same field, then you would just insert a group on that field to accomplish your desired display.
Crystal version
Database/connectivity used
Example data
Expected output
Keep in mind that Crystal only display data ONE time, so your design of 2 detail areas doesn't make sense. And GF2 would never come before a GH3, groups are nested, that's their purpose.
It sounds like what you're calling Group 2 and 3 are in essence one group, so perhaps a formula to be used as the inner group would work:
Example Data:
Record 1- Class: CS Attendence: Steve Test: C++
Record 2- Class: CS Attendence: Joe Test: C++
Record 3- Class: CS Attendence: Mary Test: Java
Output:
Class: CS
Attendees: Steve
Joe
Mary
Test: C++
Java
P.S. I do not have the capability to Show SQL Query using Crystal through ClearQuest, It has been disabled.
If you can't do the union (good thought, SV), you could either:
1) add two crosstabs into the class group footer, one which uses test as the row, and one which uses name as the row, with no column field. Use "maximum" as the summary in each case. Then suppress the row label and remove the grid lines. Or,
2) collect the names in a detail level formula that you then display in the group footer:
//{@reset} to be placed in the group header:
whileprintingrecords;
stringvar name := "";
stringvar test := "";
//{@accum} to be placed in the detail section and suppressed:
whileprintingrecords;
stringvar name := name + {table.name} + chr(13);
stringvar test := test + {table.test} + chr(13);
//{@displayname} to be placed in a group footer_a section:
whileprintingrecords;
stringvar name;
"Attendees: " + name
//{@displaytest} to be placed in a group footer_b section:
whileprintingrecords;
stringvar test;
"Test: " + test
Format each of these last two to "can grow" (format field->common->can grow.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.