Friday, November 13, 2009

Generate Crystal Report Error: 0x800003E5 Failed to open report

This happened when there is an attempt to generate the crystal report. It occurs during the loading of crreportdocument.load. It didn't include any further leads but only the function that triggers the error. This makes me wonder what causes the above stated problem.

I searched around in the usual engine, Google. Few possibilities, and funny thing is, one indicated that the memory has problem (which was what my colleague found). Due to the details of the error given, I drilled down and pick up the suggestion to reset the IIS. After reseting, attempt to access the report success. This further justify that the error is most probably due to the memory resource which has been fully utilized, that exceeds the allocated space.

I recalled, there is somewhere in the article that I read mentioned that when the number of reportdocument object is declared without disposing would generates error. This is most probably the closest reason of such error occured in my situation.

Further checking, the programmer who coded the page that executes the reportdocument did not close, dispose and collect GC. This indeed makes the suspect even stronger.

As changes toward the code would require some time, two steps were taken:

1. to continuously embed the clean up function code once the code has finished its' execution.
2. as step 1 takes time, to avoid any possibility reoccurence, scheduled "IISRESET" command to execute every midnight. This certainly is not a wise approach, but in this situation, the web application or IIS as whole is not accessible by anyone during midnight thus, it is safe to reset it to ensure the reportdocument is dispose off cleanly.


Your Ad Here