4
votes

I am totally confused with behavior of SAP Crystal Report which i am using with Visual Studio 2013. When I run my ASP.NET Web Application, I am getting following folder path aspnet_client/system_web/4_6_81/crystalreportviewers13/ instead of C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13. I do not have any such folder found in my IIS 7.5 C:\inetpub\wwwroot\aspnet_client\system_web). Can you please help me on this? due to this i am not able to see the report.

Please check the below screenshot for the refernce enter image description here

5
The Crystal runtime builds a url to that folder based on the version of .Net that's installed, even though they create the folder 4_0_3_319 during istallation, they wrongly build in the path with the .net 4.6+ versions. I fixed it by copying the folder and renaming to the correct 4_6 path. Crystal really needs to acknowledge this bug and fix it.reckface
I was having the same issue, but it was from a web site that did not even reference Crystal Reports, although Crystal Reports is installed on my dev machine. The solution was to delete the aspnet_client folder (which in my case required administrator permission to do).NightOwl888

5 Answers

11
votes

The most robust solution is to create a virtual directory under your application in IIS:

  1. Go to IIS, Right click your application

  2. Add virtual directory Set the physical path to C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13\.

  3. Set the virtual Path to /crystalreportviewers13

  4. In your web.config file add the following after the root element:

    <configSections>
      <sectionGroup name="businessObjects">
        <sectionGroup name="crystalReports">
          <section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null" />
          <section name="crystalReportViewer" type="System.Configuration.NameValueSectionHandler" />
        </sectionGroup>
      </sectionGroup>
    </configSections>
    
  5. Then later on in your web.config file, add:

    <businessObjects>
      <crystalReports>
        <rptBuildProvider>
          <add embedRptInResource="true" />
        </rptBuildProvider>
        <crystalReportViewer>
          <add key="ResourceUri" value="~/crystalreportviewers13" />
        </crystalReportViewer>
      </crystalReports>
    </businessObjects>
    
3
votes

I had the same issue after battling an blank report (from the client, no issue using VS debug on server). I saw the different version while inspecting the source of the blank report, changed the folder name to 4_6_81 and it worked.

1
votes

I just installed Visual Studio 2015 and my crystal report stopped working.

Here is solution working for me

  1. Uninstall framework 4.6
  2. If it uninstall all framework of 4.x, 4.5.x then reinstall 4.0, 4.5.x

Hope this will work

1
votes

It is still an issue. Workaround still seems to have to change the folder version under aspnet_client>system_web> like;

Before

enter image description here

After

enter image description here

When report pages are blank or stop working just view the source from browser and check system.web's version from url ../../aspnet_client/system_web/4_0_30369/crystalreportviewers13/js/crviewer/crv.js.

Here's SAP's website. https://apps.support.sap.com/sap/support/knowledge/public/en/0002250097

1
votes

Create a new folder under System.Web into your solution, and name it "4_6_81". Then, copy all resources from the folder "4_0_30319" and paste them into the new folder "4_6_81".

This has worked for me in the past.