Hi everyone,
I have a performance issue with multiple subreports that I would like to understand.
First the basic specs:
* CR version: 7.0
* Report connects to a MS Access database via ODBC
* Using the CR API to launch the report
* Using C++
* Viewing reports via ASP (but viewing them on the same server that generated the report)
* Machine is a Dual PII 400 with 512Meg RAM
The situation:
We are generating a report with 4000 records. For each record there are 2 subreports.
One subreport contains up to 4 fields selected from a table which is indexed on the field used to join with the main report.
The other subreport has up to 16 fields (but usually only one or two) and it is also indexed on the join field.
It is taking approximately 40 minutes to run the PeStartPrintJob API function. Once the report is generated it is taking about 10 minutes to view the first page of data in Crystal Reports Designer and much longer through ASP and the viewer. It then takes approximately 6 seconds to go to each new page as the subreport data is populated.
We are using subreports for two reasons. In one case the users have the choice of which fields they wish to view at run-time (4 fields max). In the other case we do not know at run-time how many fields are required (1-16 fields).
The question:
I understand that generating the report will take a long time because of all the extra queries (8000 in this case). What I don't understand is why it takes so long to generate the report AND also takes so long to view the report. I would have thought that after the report is generated all of the hard work has been done.
If anyone can tell me what is actually happening that would be great. If anyone can suggest ways to improve the situation, especially with the delays in viewing, that would be even better!
Thanks in advance.
Glenn
I have a performance issue with multiple subreports that I would like to understand.
First the basic specs:
* CR version: 7.0
* Report connects to a MS Access database via ODBC
* Using the CR API to launch the report
* Using C++
* Viewing reports via ASP (but viewing them on the same server that generated the report)
* Machine is a Dual PII 400 with 512Meg RAM
The situation:
We are generating a report with 4000 records. For each record there are 2 subreports.
One subreport contains up to 4 fields selected from a table which is indexed on the field used to join with the main report.
The other subreport has up to 16 fields (but usually only one or two) and it is also indexed on the join field.
It is taking approximately 40 minutes to run the PeStartPrintJob API function. Once the report is generated it is taking about 10 minutes to view the first page of data in Crystal Reports Designer and much longer through ASP and the viewer. It then takes approximately 6 seconds to go to each new page as the subreport data is populated.
We are using subreports for two reasons. In one case the users have the choice of which fields they wish to view at run-time (4 fields max). In the other case we do not know at run-time how many fields are required (1-16 fields).
The question:
I understand that generating the report will take a long time because of all the extra queries (8000 in this case). What I don't understand is why it takes so long to generate the report AND also takes so long to view the report. I would have thought that after the report is generated all of the hard work has been done.
If anyone can tell me what is actually happening that would be great. If anyone can suggest ways to improve the situation, especially with the delays in viewing, that would be even better!
Thanks in advance.
Glenn