Crystal Report的兼容性

时间:2012-06-01 08:00:44

标签: crystal-reports compatibility

vs2005和2010年水晶报告的2005年水晶报告不应相互支持吗?
至少如果我在我的PC上有CR2005并且我升级到CR2010它应该有效。我是开发人员,我有权安装每个版本的CR,如果我是CR的用户,他们应该是应该使它兼容的人。

查找SAP的声明:

  

由于每个版本的Crystal Reports都有自己特定的运行时   必须正确部署,部署的运行时至关重要   与Visual Studio的Crystal Reports程序集一致   在项目中引用.NET。

我错了还是错了?

2 个答案:

答案 0 :(得分:1)

Crytsal报告报告在不同版本中保持相容性;
当您使用其他版本开始处理报告时,IDE只会建议您说“报告是使用其他版本编辑的”。
无论如何,报告可以在不同的运行时使用,您不需要修改它们。

您在上工作的解决方案(在我的情况下,它是 WEB APPLICATION )应该与部署应用程序的服务器上安装的运行时匹配。 无论如何,有一个web.config解决方法,使应用程序也可以使用不同的运行时:

  <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="CrystalDecisions.ReportSource" publicKeyToken="692fbea5521e1304" culture="neutral"/>
        <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
      </dependentAssembly>
      <dependentAssembly>
        ...
    </assemblyBinding>
  </runtime>

其中 oldVersion 是您用于开发的版本, newVersion 是服务器上安装的版本。

答案 1 :(得分:0)

在大多数情况下,当前版本的CR(无论可能是什么)都能够读取旧版本的文件格式。但是,如果您尝试保存它,该文件将更新为当前版本的格式。

也就是说,CR的旧版本(我认为v5及更早版本)曾使用Fetch()Store()在子报告及其容器之间传递信息;这些功能包含在UFL中。当他们将架构切换为使用Shared变量范围时,UFL不会自动包含在安装中;需要手动添加。这个决定“打破了”很多报道。虽然这不完全是文件格式兼容性问题,但我唯一一次回忆起他们(SAP nee BusinessObjects nee Crystal Decisions nee Seagate Software)就是这样肆无忌惮。