A crystal report is built around a set of 'rows', detail lines. If you want two different sequences in the same docutment, or maybe totalling by two different sets of criteria, you can get this using a subreport in the report header or footer.
Crystal also shows its limits when you try to get a lot of different 'tables' into a single 'row'. In Crystal 8.5, at least, a subreport was the easiest way to get something working.
It is also a way to show history records for an account, when you still want to see the account as a detail record when it has no history. You could do this rather better using SQL, but only if you have SQL and know how to use it.
Subreports make a lot of work for computers, but save time for humans. You decide which is more important for your particular circumstances.
Where I work, we go to a lot of trouble to make our mainframe screens and reports run efficiently. We use Crystal mostly for investigations and management information, cases where it doesn't much matter if a job takes twice as long because the user can be doing something else in the meantime. For a big Crystal report that is run frequently, it would be worth going to some trouble to make it efficient. In other cases it makes sense to save programmer-time.
![[yinyang] [yinyang] [yinyang]](/data/assets/smilies/yinyang.gif)
Madawc Williams (East Anglia, UK)
![[yinyang] [yinyang] [yinyang]](/data/assets/smilies/yinyang.gif)