I am really surprised we figured that one out...
(very oddly IMO) In Crystal within the Database Expert making a join between tables (or views or whatever) does not make the join "function". If you use any field from both tables the join will now "function" (or become enforced). You can use the fields in any part of the report not just displaying in the canvas (like in the select expert or a formula or grouping or a conditionalal formula) to 'enforce' the join.
If you are only using a field from 1 table but joining to another table you have to use the 'Enforce Joins' options in Crystal.
In SQL (and most other systems) just making the join "enforces" it so those options never made sense to me. But this is Crystal not SQL.
Anyway it does not come up too often as usually designers need at least one value from both tables so it often is moot (and makes it look as if Crystal automatically enforces the join).
It is the weirdest thing to watch and can really trip up your data results.
You can watch it in your report.
Cahange it back to Not Enforced.
Go into the Preview Mode.
See how it is too many pages.
Now take any field from the 'unused' table and drop it on the canvas. The report will shrink as it is now 'enforcing' the joins becasue you used a field from both tables.
Edited by DBlank - 08 Mar 2010 at 2:42pm