a shared variable is a value that can cross the boundaries of each report/subreport.
so let's say that we put a line counter in each report, so that in the detail section there a formula like:
global numbervar lineCount;
lineCount := lineCount +1;
"" //hide the line count
then in each subreport's report footer you would place a formula like:
shared booleanvar x;
global numbervar lineCount;
x := (lineCount = 0);
"" //again hides the display...so your report will be blank
each subreport would have different name so maybe x1, x2, x3 etc
then in the main report, in the section that the fields are in, go back to section expert, and in the suppress x-2 button enter something like:
shared booleanvar x1;
shared booleanvar x2;
shared booleanvar x3; //these match the values in your subreports
x1 and x2 and x3
what did we do?
first we counted the lines in each subreport
next we set the variables to return true if there are no lines in the subreport
finally, we compare all the values.
The suppress formula is a bit backwards...it wants to see true to HIDE the values, not to display them. So, if 1 of the reports displayed something, it would return false, and the suppression formula sees 'false', so it displays the data. If all the subreports are empty, then suppression will see 'true' and hide the additional fields.
HTH