cancel
Showing results for 
Search instead for 
Did you mean: 

Visual Studio .NET 2008 Crystal Reports CPU Usage - Speed

Former Member
0 Kudos

We currenlty have installed Service Pack 1 for VS 2008 and are experiencing a 100% CPU Usage when we create a report via the ASP.net application. Any ideas on what might be causing this? As soon as the report is done, the CPU usage drops back to about 2%.

Thanks in advance for your help!

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

Assuming the version of CR you are using is 10.5 (bundles with .NET 2008) apply SP 1 doe CR 10.5 from here;

https://smpdl.sap-ag.de/~sapidp/012002523100009351512008E/crbasic2008sp1.exe

However, since the CPU returns to 2% after the report is done, depending on the hardware and complexity of the report, I'd consider this to be normal.

Ludek

Former Member
0 Kudos

Thanks Ludek for your quick response. I also want to mention that it take about 3-5 minutes for the report to complete. Any idea on why this is taking so long? While it is running the CPU does stay at 100%.

Thanks again!

former_member183750
Active Contributor
0 Kudos

This depends on the complexity of the report and the hardware and possibly a few other variables. Also, first load of any report is usually slower, though typically not as slow as 3 to 5 minutes. But we need to start with a few questions first;

What is the version of CR you are using?

Ever apply any fixes for that version?

What is the database you are connecting to?

What is the database connection type (ODBC, OLE DB, etc.).

If as a test you try a simple one table report, how quickly does it load?

What is taking the time; load of report, display of the viewer, database connection?

Depending on the version of CR, can you run the report in the CR designer and compare the performance?

Ludek

Former Member
0 Kudos

What is the version of CR you are using?

The Crystal Report vErsion that is bundled with .NET 2008

Ever apply any fixes for that version?

SP 1

What is the database you are connecting to?

An XML Schema is the datasource. Has mutlpiple tables.

What is the database connection type (ODBC, OLE DB, etc.).

XML Scheama

If as a test you try a simple one table report, how quickly does it load?

A one table report is quick

What is taking the time; load of report, display of the viewer, database connection?

The report has about 10 sub reports and had the same datasource for each report.

The report takes about 20 seconds to set the datasource for each report

Depending on the version of CR, can you run the report in the CR designer and compare the performance?

Can I do this from Crystal Reports in Visual Studio 2008?

Thank again!

Any suggestions?

Lisa

former_member183750
Active Contributor
0 Kudos

From your answer, I take it you are passing an ADO .NET Dataset to the report.

Your first performance hit occurs due to the fact that Crystal Reports creates it's own copy of the dataset and works with that.

Second hit is due to the multiple tables. Crystal Reports does not use the table links or keys defined in the ADO .NET dataset. See [this|http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes.do] note for more details.

Third hit may be the size of the dataset. We recommend no more than 2,000 rows of data.

Fourth hit is the number of subreports. You are essentially running 11 reports at the same time (10 subreports + main report). This is in a best case scenario that assumes none of the subreports is in a detail section where it would need to run some multiple number of times, depending on the number of records in the detail section.

For a bit more info, see the "[Best Practices Working with DataSets"|http://www.sdn.sap.com/irj/boc/index?rid=/library/uuid/60dfad1b-7164-2b10-60a6-8addb49473b2&overridelayout=true] presentation.

So, your solution may involve the following;

1) Do not use multiple tables in your dataset

2) Keep the dataset under 2000 rows

3) Do not place subreports into a detail section of a main report

4) Minimize the number of subreports

Alternatively, if you are using large number of rows and if possible, move away from datasets and try a direct database connection.

Ludek

Former Member
0 Kudos

We INstalled SP1 and now recieve the following error message:

Desc:System.Web.HttpUnhandledException: Exception of type 'System.Web.HttpUnhandledException' was thrown. ---> System.TypeInitializationException: The type initializer for 'CrystalDecisions.CrystalReports.Engine.ReportDocument' threw an exception. ---> System.Runtime.InteropServices.COMException (0x800736B1): Retrieving the COM class factory for component with CLSID {5FF57840-5172-4482-9CA3-541C7878AE0F} failed due to the following error: 800736b1.

at CrystalDecisions.CrystalReports.Engine.ReportDocument..cctor()

Any ideas?

Edited by: Lisa Guess on Nov 11, 2009 9:35 PM

former_member183750
Active Contributor
0 Kudos

Nope. Create a new thread (one issue per thread and this is unrelated to the original issue). And supply the following info:

Try a new app - does that work?

At what point does your app fail?

Ludek

Answers (0)