Home / Community & Support / Knowledge Base / Telerik Reporting / General, Installation / Converting reports from various versions of CrystalReports

Converting reports from various versions of CrystalReports

Article Info

Rating: 3

Article information

Article relates to

 Telerik Reporting

Last modified

 February 15, 2013

Last modified by

 Steve, Telerik



HOW-TO
Convert reports from various versions of CrystalReports

DESCRIPTION
The Telerik converter from CrystalReports is built against version 10.2.3600.0 of CrystalReports that comes with the installation of MS Visual Studio 2005.

If you do not have this version installed, you can still use the converter if you have any newer version of the product that has .NET support, such as Crystal Reports XI R2, Crystal Reports Basic for Visual Studio 2008, Crystal Reports 2008. All you need to do is to define binding redirection rules in the configuration file of the Visual Studio you are using.

Note: Crystal Reports for Visual Studio 2010 is not supported as the CrystalDecisions.Enterprise.Framework and CrystalDecisions.Enterprise.InfoStore assemblies are no longer shipped.

SOLUTION
  1. Examine the Global Assembly Cache (C:\WINDOWS\assembly) to check which version of Crystal Reports you have installed.
  2. Modify the following code snippet accordingly, depending on the version you use and insert it in your configuration file (e.g. for VS2010 on 32 bit machine it is located in C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.config)
    <configuration>  
      <runtime>  
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
          <dependentAssembly>  
            <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral" />  
            <bindingRedirect oldVersion="x.x.x.x" newVersion="x.x.x.x"/>  
          </dependentAssembly>  
          <dependentAssembly>  
            <assemblyIdentity name="CrystalDecisions.Enterprise.Framework" publicKeyToken="692fbea5521e1304" culture="neutral" />  
            <bindingRedirect oldVersion="x.x.x.x" newVersion="x.x.x.x"/>  
          </dependentAssembly>  
          <dependentAssembly>  
            <assemblyIdentity name="CrystalDecisions.Enterprise.InfoStore" publicKeyToken="692fbea5521e1304" culture="neutral" />  
            <bindingRedirect oldVersion="x.x.x.x" newVersion="x.x.x.x"/>  
          </dependentAssembly>  
          <dependentAssembly>  
            <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral" />  
            <bindingRedirect oldVersion="x.x.x.x" newVersion="x.x.x.x"/>  
          </dependentAssembly>  
        </assemblyBinding>  
      </runtime>  
    </configuration>  

    where x.x.x.x is the version of Crystal Reports that you are using and x.x.x.x is the version mentioned in the "New Report Wizard".
     
  3. Restart Visual Studio.
  4. Add new Telerik Report to your project and start the Report Wizard. On its second step, select "Convert from existing report".

Here you can find some presets of the binding redirections you need according to the Crystal version yo have installed:

If you have Crystal Reports XI R2:

<configuration>  
  <runtime>  
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="11.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.Framework" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="11.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.InfoStore" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="11.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="11.5.3700.0"/>  
      </dependentAssembly>  
    </assemblyBinding>  
  </runtime>  
</configuration>  


If you have Crystal Reports 2008:

<configuration>  
  <runtime>  
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="12.0.2000.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.Framework" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="12.0.1100.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.InfoStore" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="12.0.1100.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="12.0.2000.0"/>  
      </dependentAssembly>  
    </assemblyBinding>  
  </runtime>  
</configuration>  


If you have Crystal Reports Basic for Visual Studio 2008:

<configuration>  
  <runtime>  
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="10.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.Framework" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="10.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Enterprise.InfoStore" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="10.5.3700.0"/>  
      </dependentAssembly>  
      <dependentAssembly>  
        <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral" />  
        <bindingRedirect oldVersion="10.2.3600.0" newVersion="10.5.3700.0"/>  
      </dependentAssembly>  
    </assemblyBinding>  
  </runtime>  
</configuration>  


"CrystalReports" is a trademark of Business Objects.

Comments

If you'd like to comment on this KB article, please, send us a Support Ticket.
Thank you!

Please Sign In to rate this article.