Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack

19

when i deploy my asp.net website on windows server 2003 with oracle 10g database in backend.I am using sap crystal report version 13.0.2000.0 It gives error as

Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ 
stack.Description: An unhandled exception occurred during the execution of the current web request.
Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Runtime.InteropServices.COMException: Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[COMException (0x80041811): Unsupported Operation. A document processed by the JRC engine cannot be opened in the C++ stack.]
CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options) +0
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options) +95
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() +270

[CrystalReportsException: Load report failed.]
CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened() +333
CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob) +877
CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename) +84
WEBPAGES_srccustomerbill2.setdatasource() +2270
WEBPAGES_srccustomerbill2.Page_Load(Object sender, EventArgs e) +233
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +91
System.Web.UI.Control.LoadRecursive() +74
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2207

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.1

c++
asp.net
crystal-reports
asked on Stack Overflow Dec 28, 2011 by Rupesh Deshmukh • edited Sep 8, 2020 by Boghyon Hoffmann

5 Answers

35

If you have a Web Application

you have to modify the properties for the .rpt files:

  • Change Build Action to "Content" ("Embedded Resource" by default).
  • Change Copy to Output to "Copy always" ("Do not copy" by default).

If you don't want to change properties for each file, there's an easy way to default build action for non-default file-types.


If you have a Web Site

you have to flag "Allow this precompiled site to be updatable" inside "Publish WebSite" menu


In both Web Application and Web Site

you can, instead of doing previous steps

  • Not publish the report using the publish option, just copy them manually in publish folder.

and you must

  • Check if the reports exist and are accessible by the application (permissions, filepath,)

Good luck!

answered on Stack Overflow Jun 6, 2012 by Emanuele Greco • edited Jun 20, 2020 by Community
6

You will need to modify two properties in the .rpt files:

  1. Build Action is set to "Embedded Resource" by default. Change it to "Content".
  2. Copy to Output is set to "Do not copy" by default. Change it to "Copy always".

Rebuild, Build deployment package and Publish. Done!

answered on Stack Overflow May 15, 2012 by aleafonso
3

I have got this same error message and have tried Googling and Googling and yet found the solution.

First, you have to check your ReportPath if is correct.

If you're using C#, this code might help:

//declare new report
ReportDocument rpt = new ReportDocument();                  
//load your report
rpt.Load(Server.MapPath("crMembers.rpt"));                  
//set your datasource
rpt.Database.Tables[0].SetDataSource(m.GetReportSource());  
//set your report for the viewer
crviewer.ReportSource = rpt;                                
//refresh the viewer
crviewer.RefreshReport();                                   
answered on Stack Overflow May 10, 2012 by senzafine • edited May 11, 2012 by Pavel Strakhov
-1

After try all above solution i got final solution is just copy your Crystal Report folder( where you save all crystal report into single directory) directly into location where you host you website. In my case it is c:/inetpub/www/xyz here xyz is publish folder.

answered on Stack Overflow May 9, 2013 by ANURAG
-2

Re-install the "Crystal report engine" to the server and Build Action set to "Content"..

answered on Stack Overflow Feb 15, 2013 by ErandaK • edited Mar 7, 2013 by ErandaK

User contributions licensed under CC BY-SA 3.0