cancel
Showing results for 
Search instead for 
Did you mean: 

Printing performance problems...

Former Member
0 Kudos

This Question was asked before, but never answered properly:

After a CR was migrated from VS 2003 to VS 2008 a report printout (print spooler load) takes about 20 minutes for 2000 pages...

Under VS2003 it took about 20 seconds for the same report!!!

we test that in a same environment, same printer and same computer. -->so it has nothing to do with the print driver, OS, database, etc...

btw, the performance is fine and takes about the same time when loading the CR in the crystal report viewer!

Is any difference between CR 2003 and CR 2008 PrintDocument? I appreciate your help.

Thanks

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

What spooling times per page did you measure with the different CR versions?

Ok, how long does it take to get an answer if the escalation is accepted or declined?

former_member183750
Active Contributor
0 Kudos

I should have an answer from QA within about 4 weeks (often less). Please note that the escalation will be for both CR 10.5 and CR 2008. It will be up to QA to decide if they want to fix both, or just one of those.

The peformace with CR 2008; It took a bit over 6 minutes to spool the print jobe, then another 2 minutes to start printing.

Ludek

former_member183750
Active Contributor
0 Kudos

The issue was submitted under TE 5000220865.

The TE was rejected by QA.

Suggested work-around; As images in a Crystal Report require large amount of processing, limit the number of images in a report. Two suggestions;

1) Filter the report data such that fewer pages are returned.

2) Use the barcode formulas function to create the barcodes directly (e.g.; do not retrieve the barcodes as images from the database)

Ludek

Answers (7)

Answers (7)

Former Member
0 Kudos

Thank you Ludek, that you take the time to test my report.

I'm measuring the spooling time, not the printing.

the spooling time per page with .NET3.5 CR2008 (Engine v10.5.3700.0) is 0.6 sec.

the spooling time per page with .NET1.1 CR2003 (Engine v9.1.5000.0) is 0.01 sec.

I tested it on the same computer, .NET 1.1 and .NET 3.5 on the same OS (Win XP SP2).

I tested it on an HP Laserjet, later on "[FreePDF XP|http://freepdfxp.de/xpDownload.html]" because I measured the same spooling times, and with FreePDF XP I generate a pdf file, so there is no paper waste. (you can use any other file generating print job).

But again, I can send you another rpt file, which you can open with both: vs2003(CR2003 (Engine v9.1.5000.0))

and vs2008(CR2008 (Engine v10.5.3700.0)).

former_member183750
Active Contributor
0 Kudos

Well, I've been able to reproduce this all the way up to CR 2008 (12.x). With CR 2008, all I had to do is open the report in the designer and run it to duplicate the issue E.g.; no .NET app. From here the process involves the creation of a Technical Escalation to QA and they will either accept, or decline the escalation. In the event this is accepted, the normal wait time for a fix is 6+ months. I will update this thread once the TE is created and then again once QA has commented ont he issue.

Ludek

Former Member
0 Kudos

I can send you the other rpt file, which is easier to analyse.

former_member183750
Active Contributor
0 Kudos

Well, originally I had time problems - until I realized that the printer was reporting an error re. page size. E.g.; the report is A4, I do not have A4 paper size on the printer. Eventually the report was printed, but it took minutes (I was selecting page 1 only). Once I modified the report to print 81/2 X 12, the report printed page 1 almost instantly from the CR designer. So I used a simple .NET app and printed directly to printer;

crReportDocument.Load("C:\test\BV3023.rpt";)

crReportDocument.PrintToPrinter(1, True, 1, 1)

The above is on a button event. Once the button was pressed, the 1st page of the report printed in less than 5 seconds.

Next, I printed from the CR viewer;

CrystalReportViewer1.ReportSource = "C:\test\BV3023.rpt";

From the click of the print button on the toolbar of the viewer to the report printing was less than 5 seconds. I am not sure that I actually want to print out 2,000+ pages here...

So, this brings me to a few questions. In your original post you say;

VB .NET 2008, takes 20 minutes for 2000 pages...

Under VS2003 it took about 20 seconds for the same report!!!

Is it all 2,000+ pages that took 20 seconds to print under VS .NET 2003? By my calculation, that comes out to a 100+ pages per second?

Similarly, 364 pages take 6 seconds? That is 61 pages per second(?).

What printer are you using?

Or are you measuring the spooling rather than the printing?

Was your most recent test with .NET 2003 and .NET 2005 on the same computer, or are the .NET environments on different computers?

Ludek

Former Member
0 Kudos

I exported the report as a rpt file, opened it and printed it out, the performance is as slow as I print directly.

The I tested the barcode generator you suggested (http://www.codeproject.com/KB/graphics/ean_13_barcodes.aspx),

it took me a while to adjust it that it works with my rpt (set the right pagescale and cr can't handle "transparent" color in the blob field). Nevertheless, no difference in printing performance!

former_member183750
Active Contributor
0 Kudos

In about 1/2 hour, I'd like you to post the saved data report on to our ftp server here:

https://sapmats-us.sap-ag.de/upload/index.cgi?id=9RDY5FKZXIN99TENJRZ88JZJLZYPRRYQ9G37MZ7CF8EEDY1I8W

Wait 1/2 hour as sometimes it takes that long for the container to be created. I'll be automatically notified once the file is uploaded.

Ludek

Former Member
0 Kudos

II uploaded the file.

Meanwhile I did some other tests:

With .Net Framewrok 2.0 and 3.0, no difference in print performance.

I tried to open the rpt file (which I uploaded) with "Visual Studio 2003 : Crystal Reports für Visual Studio .NET ReportViewer", couldn't open the file, there comes a dialog to logon to the datatables (I think it is because of its subreports.)

I tried another report with 364 pages, also EAN codes on it but without subreports. I opened it with "Visual Studio 2008: Crystal Reports ReportViewer" and printed it out. The PrintToPrinter method took exactly 3 minutes. I tested the pdf Export: it took 2min30sec.

The I opened the rpt file with "Visual Studio 2003 : Crystal Reports für Visual Studio .NET ReportViewer" which worked this time and did the same tests:

PrintToPrint took 6 seconds.

pdf Export: 2min31sec

I suggest, I upload this 2nd rpt file, because of its less complexity and the same lag of printing it out.

former_member183750
Active Contributor
0 Kudos

I'll take a look at it later today

Ludek

Former Member
0 Kudos

Sorry, i try again:

I'm using Crystal Reports Basic for Visual Studio 2008 (Engine v10.5.3700.0)

I'm refering to the CR viewer for .NET, the performance issue is when i'm trying to print using c# code ( PrintToPrinter method).

the EAN codes are generated in jpeg format, they are added to a dataset as Byte array and pulled into the report as BLOB field.

I tried the report without EAN codes, of course it is faster:

Crystal Reports Basic for Visual Studio 2008 (Engine v10.5.3700.0): 3 minutes 20 sec.

Crystal Reports für Visual Studio .NET 2003 (Engine v9.1.5000.0): still 20 seconds.

Thank you

DWave

former_member183750
Active Contributor
0 Kudos

I want you to export the report to a Crystal Report format. In this way you will get a report with saved data. Run this saved data report in your app (do not refresh the data). What's the performance now? I need you to do this test as if you get performance issues here also, I'll ask you to share the report with me so I can test it out here.

Also, were you able to try the below?

I wonder how a project such as the one described in the link below works(?):

http://www.codeproject.com/KB/graphics/ean_13_barcodes.aspx

Ludek

Former Member
0 Kudos

It is a win app,

"No Printer" is selected in the printsetup.

I use the same machine to test.

WinXP SP2

Same printer drivers: I tested with both: a HP Laserjet printer and Adobe pdf

.Net framework 1.1 with CR2003

.Net framework 3.5 with CR2008

The report has about 20 different EAN codes as bitmap per page and about 2000 pages.

to print the report on CR2003 (Engine v9.1.5000.0) it takes about 20 seconds (PrintSpooler Load),

In CR2008 (Engine v10.5.3700.0) it takes about 20 minutes (PrintSpooler Load).

There is no difference if I use HP Laserjet printer or Adobe pdf as "printer". Same delays..

When i try to print the rpt directly without using the crystalReportViewer, there is still the same "lag".

There is no difference if i choose adobe pdf or HP Laserjet as printer.

former_member183750
Active Contributor
0 Kudos

There are some inconsistencies starting to come up in this thread;

In the original post you say that the reports work fine from the CR designer (the performance is fine and takes about the same time when loading the CR in the crystal report viewer!). But in the last post you say:

CR2008 (Engine v10.5.3700.0)

CR 2008 assemblies are version 12.x.x. Crystal Reports Basic for Visual Studio 2008 assemblies are version 10.5.x.

So, I need a clarification on what you mean when you say;

the performance is fine and takes about the same time when loading the CR in the crystal report viewer!

Are you refering to a CR Designer viewer? Or are you refering to the CR viewer for or .NET? If it is the CR viewer for .NET, then the issue is when you are trying to print using code?

And what's the performance of a report that does not use EAN codes?

I wonder how a project such as the one described in the link below works(?):

http://www.codeproject.com/KB/graphics/ean_13_barcodes.aspx

Ludek

Former Member
0 Kudos

Version on Visual Studio 2003 : Crystal Reports für Visual Studio .NET xxxxxxxxxxx

Version on Visual Studio 2008: Crystal Reports xxxxxxxxxxxxx

Crystal Reports Basic für Visual Studio 2008

Deployed: CR basic for VS2008 SP1 (v10.5.2.0)

Edited by: Ludek Uher on Apr 16, 2010 7:42 AM

former_member183750
Active Contributor
0 Kudos

Never share your product keycodes. I modified your post and removed the keycodes...

Re. the issue. It may be that the report is searching for a non existing printer driver. See if setting the report to "No printer" will help. Alternatively, ensure that the report is set to use default printer driver, not a specific printer driver. Also, ensure you are using the most up to date printer driver.

Is this a web or a win app?

See the follwoing resources re. printers:

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/304a4cb2-2540-2b10-3d9f-8c190eab...

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a09051e9-721e-2b10-11b6-f9c65c64...

https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/600c24a3-ab1d-2b10-1bb4-c50562e3...

Ludek

former_member183750
Active Contributor
0 Kudos

From your description, I am not sure what version of CR you are using (e.g.; there was never CR 2003). What is the version of CR installed on your development computer (Help | About).

Ludek

Follow us on Twitter http://twitter.com/SAPCRNetSup