Hi,
Creating aggregates make your reports very fast. In most of my reports I use aggregates.
Use eg. "Maintaining aggregates in BW" by Umesh Pednekar to create one.
But remember of granularity - aggregate shouldn't contain characteristics like document number or (even worse) number of line within a document. Such an aggregate won't be fast.
It would be wise before creating aggregates to plan and create some universal aggregates for many queries rather than create lots of aggregates one after another.
You may filter data in aggregates to make it faster (like 0comp_code = 1000) but it's not possible to use any range of value (0gl_account = 40000000 - 49999999). You may use hierarchy node instead.
Hope it helps.
Leszek