When we were running reports in .NET 3.5 there was no problem. As we moved to .NET 4.5 and upgraded Crystal to these versions:
We keep getting this error:
Load report failed.
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)
at AppSuite.WebApp.CrystalViewer.LoadReport(Boolean bRefresh)
at AppSuite.WebApp.CrystalViewer.Page_Load(Object sender, EventArgs e)
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
The maximum report processing jobs limit configured by your system administrator has been reached.
at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options)
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
The dispose method is called in the code so i don't think that's causing problem:
Private oReportDocument As New ReportDocument
Private Sub LoadReport(ByVal bRefresh As Boolean)
'Get the report data
Dim dtReport As DataTable = ReportHelper.GetReportData(Me.CacheKey, bRefresh)
'If there is data to display bind it to the Crystal Viewer
If dtReport.Rows.Count > 0 Then
With oReportDocument
.Load(ReportHelper.GetReportPath(Me.ReportId))
.SetDataSource(dtReport)
.PrintOptions.PaperSize = Common.Settings.CrystalPaperSize
End With
crvMain.ReportSource = oReportDocument
Else
'Hide the controls and display a message if there is no data
crvMain.Visible = False
btnPDF.Visible = False
btnExcel.Visible = False
lblNoResults.Visible = True
End If
End Sub
Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
oReportDocument.Dispose()
End Sub
ASPX part
<CR:CRYSTALREPORTVIEWER id="crvMain" HasPrintButton="False" HasExportButton="False"
runat="server" ToolPanelView="None" BorderColor="Transparent" BorderStyle="None"
Height="50px" Width="350px" HasRefreshButton="True" HasCrystalLogo="False"
HasToggleGroupTreeButton="False" meta:resourcekey="crvMainResource1"></CR:CRYSTALREPORTVIEWER>
Changing the PrintJobLimit = -1
in registry did not solve the problem.
Do we need to buy the full version of crystal reports or there is something else that's causing this issue?
We had a similar issue. In our case we had two versions of crystal reports installed in the server. Somehow the newer Crystal Report version installed in the server doesn't seems to be working. When we use report.Load()
it was hanging forever. This is how we solved.
Web.config > runtime section.
<runtime>
<assemblyBinding>
<dependentAssembly>
<assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304"/>
<bindingRedirect oldVersion="13.0.2000.0" newVersion="10.5.3700.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="CrystalDecisions.CrystalReports.Shared" publicKeyToken="692fbea5521e1304"/>
<bindingRedirect oldVersion="13.0.2000.0" newVersion="10.5.3700.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304"/>
<bindingRedirect oldVersion="13.0.2000.0" newVersion="10.5.3700.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>