If you are certain that your tables are normalised then I think that I would suggest that you use sub reports each supported by a query to construct your overall report.
Reasons
Basically because I think it would be easier to manage the report construction and design.
Probably the data does decompose into logical groups.
You can set the Can Grow/ Can Shrink on the sub report so that if a section does not have any data then you will not have a lot of white space on your report.
len B