Symptom
- The SQL query of the main report takes X seconds
- The SQL query of the subreport takes Y seconds
- Refreshing the report takes considerably more time than X+Y seconds
Environment
- SAP Crystal Reports 2008
- SAP Crystal Reports 2011
- SAP Crystal Reports 2013
- SAP Crystal Reports 2016
Reproducing the Issue
- Create a Crystal report that takes 5-6 seconds to refresh
- Insert a subreport (that takes also 5-6 seconds) into the details, so that it's repeated multiple times
- Observe, that refreshing the whole report takes more than 10-12 seconds
Cause
- In Crystal Reports the subreports are evaluated after each other
- The SQL call of the second subreport will start after the data is retrieved for the first one (and so on)
- This means, the refresh time will be (the runtime of the subreport alone) * (number of the subreport instances)
Resolution
- This is a by design behaviour of the product
- Currently it's not possible to run the subreports parallelly, therefore it is not suggested to put a subreport in the details section
- If you'd like to see this feature in the future releases, you can submit (or vote) the idea at the SAP Crystal Reports Idea Place
- Workaround: use on-demand subreports
Keywords
subreports, performance, parallel, at, once, same, time, SQL, query, on, demand, run, process, evaluate, result, finish, time, runtime, refresh, runtime, long, slow , KBA , BI-RA-CR , Crystal Reports designer or Business View Manager , Problem
Product
Crystal Reports 2008 V1 ; SAP Crystal Reports 2011 ; SAP Crystal Reports 2013 ; SAP Crystal Reports 2016