Skip to content

New method to query if print engine is busy

What is new - 8.2

The cDRReport class contains many functions that require a report ID to operate. When no report is available, the error message is: "No Report ID specified, Report was not opened?"

There are certain operations where this error is entirely justified, and the solution is simply to change the sequence of the code. For example, when an AddFilter is sent to the report object without first attempting to open the report (using OpenReport, RunReport, PrintReport, DisplayReport, etc.), the only way to resolve the situation is by changing the sequence.

However, there is another scenario where this error may occur. If the report engine is busy handling a report and a timer fires that attempts to run another report using the same cDRReport object, this is known as a re-entrant operation, which will not work. This typically occurs directly during an OpenReport operation. The function IsReportEngineBusy can be utilized to detect the potential cause of the issue.