(NOTE: This FAQ also posted in the "BO: Crystal Reports 4 Other topics" forum, as it is not limited to a CE problem)
Can apply to Crystal Enterprise 9 and CE-RAS 9 (all editions):
While any subreport will cause a performance hit to a main report, sometimes that hit is a lot bigger than expected.
Consider a report that contains 1 to N subreports. It is possible to have two different copies of the same exact report created, where one will open in CR or run in CE/CE-RAS in a matter of seconds, while the other might take over a minute just to open up (most noticable in CR). You can see the time it takes by going to the menu
And selecting the "Performance Timing" node in the tree.
Similarly, if you're running a report through Standalone RAS or CE, you can add some timing to your .asp page (or whatever method you're using)--the line to time is going to look something like:
Note that if it takes your report a minute to open in Crystal Reports, it will take the same amount of time, plus your data access and execution time, for the report to run through CE or Standalone RAS. If you have a poor performing report on those systems, try opening the report in CR first and see if this is the problem--it might not be RAS or CE, but they're definitely affected by it.
You can tell if a subreport has been imported this way by right-clicking on the subreport in CR and choosing "re-import subreport". This works best if the subreport does not exist in the exact location from where it was originally imported, because CR will tell you it can't find the report at path "\\networkserver\d\reports\etc" or something like that. If it displays a UNC path like that, re-import the subreport from a local copy (e.g., c:\temp\mysubreport.rpt), save, and then re-open the report in CR. You should see substantial improvement in performance.