Skip to Content
0
Former Member
Nov 27, 2008 at 03:31 PM

PDF export freezing

33 Views

Hello

We have a VB6 application using RDC in CR XIR2. This application is exporting typically 10-100 invoices as a PDF. Occasionally this export is hanging and control does not return from the RDC application back to the application.

Recently when I studied this problem at customer I noticed that this user had 75000 temporary files in the Local Settings\temp folder. 99% of those were Crystal Reports temporary files.

I saw elsewhere in the web that these old temporary files could be an issue when printing reports with Crystal Reports but is this true?

Our report has 3 subreports. I have used tracing and noticed that somehow based on the log printing is "interleaved", ie it looks like there are two printings going at the same time.

Any idea what might be wrong?

Here is the part of the log where things start to go wrong. I have compared the log from the similar printings and differenced are marked with "ODD -->" in the log file. It seems that runtime is starting something else while previous things are still going on.

0xad4,Start Background Processing,Elapsed Time,"20"

0xad4,Generating a subreport object,STOP,"Successfully generated subreport"

0xad4,createNewDataSource,Start Time,"14:05:36"

0xad4,createNewDataSource,Elapsed Time,"0"

0xad4,Generating a subreport object,Start Time,"14:05:36"

0xad4,Checking for data source changes,Start Time,"14:05:36"

0xad4,DataSet checking for datasource changes,Start Time,"14:05:36"

0xad4,DataSet checking for datasource changes,Starting to check current datasource for changes,""

0xad4,DataSource handling report changes,Start Time,"14:05:36"

0xad4,DataSource handling report changes,Deleting the last saved records,""

0xad4,Invalidating saved records,Start Time,"14:05:36"

0xad4,Invalidating totaller,Start Time,"14:05:36"

0xad4,Invalidating totaller,Elapsed Time,"0"

0xad4,Invalidating saved records,Elapsed Time,"1"

0xad4,Determine if two passes needed,Start Time,"14:05:36"

0xad4,Determine if two passes needed,Two passes are NOT needed,"Nothing forces us to use two passes"

0xad4,Determine if two passes needed,Elapsed Time,"0"

0xad4,DataSource handling report changes,Marking first pass as NOT finished,""

0xad4,DataSource handling report changes,Elapsed Time,"4"

0xad4,DataSet checking for datasource changes,Elapsed Time,"5"

0xad4,Checking for data source changes,Elapsed Time,"6"

0xad4,Start Background Processing,Start Time,"14:05:36"

0xad4,Do First Pass,Start Time,"14:05:36"

0xad4,Do First Pass,stopRecord,"0"

0xad4,Do First Pass,Marking first pass as NOT finished,""

0xad4,Regenerating saved records,Start Time,"14:05:36"

0xad4,Regenerating saved records,Push record selection to server,"FALSE"

0xad4,Begin reading from database,Start Time,"14:05:36"

0xad4,Opening database connections,Start Time,"14:05:36"

0xad4,Opening database connections,Number of tables in report,"1"

0xad4,Opening database connections,Number of connections in report,"1"

0xad4,Opening database connections,Elapsed Time,"1"

0xad4,Begin reading from database,Elapsed Time,"16"

0xad4,End reading from database,Start Time,"14:05:36"

0xad4,End reading from database,Total records read,"0"

0xad4,End reading from database,Elapsed Time,"1"

0xad4,Regenerating saved records,Finished running the first pass,""

0xad4,Regenerating saved records,Elapsed Time,"19"

0xad4,Do First Pass,Have valid saved records,"Don't eval record selection"

0xad4,Do First Pass,Marking first pass as finished,""

0xad4,Do First Pass,Elapsed Time,"21"

0xad4,Start Background Processing,Elapsed Time,"22"

0xad4,Generating a subreport object,STOP,"Successfully generated subreport"

ODD --> 0xad4,createNewDataSource,Start Time,"14:05:36"

ODD --> 0xad4,createNewDataSource,Elapsed Time,"0"

0xad4,Generating a subreport object,Start Time,"14:05:36"

What the runtime does on the background? How the calling application should wait for it if needed at all??

Thanks in advance for all comments and ideas!!

Timo Juntunen