如何在Visual Studio 2017中集成SAP Crystal Reports

How to integrate SAP Crystal Reports in Visual Studio 2017

可以在当前版本的Visual Studio 2017中使用报表设计器吗?

用于Visual Studio集成的SAP Crystal Report Wiki仅声明:"当前不支持RC构建-已测试可以打开现有应用程序并且可以运行"。

我已经安装了最新的开发人员SDK(Support Pack 19 v.13.0.19.2312),但是当我尝试打开现有报告(.rpt)时,出现以下消息:

There is no editor available for 'C:...\
eport.rpt'.

Make sure the application for the file type (.rpt) is installed.


编辑(2018/02/28)

在问这个问题时,我已经在计算机上安装了SP19。 应该解决我所有问题的当前版本是SP22,已于2018/01/11发布。 SAP Crystal Report Wiki中仍然提供所有必需的信息和下载链接。


编辑(2019/03/20)

感谢@ANewGuyInTown:当前版本为13.0.24。


Crystal Reports SP 21支持Visual Studio 2017,自2017年9月1日起可以下载。


发生此错误的原因是,在为Visual Studio 2017安装Crystal Reports SP21的最后,出现以下屏幕:

enter image description here

不要检查是否在运行时安装,这个默认标记是错误的。仅安装Visual Studio 2017的Crystal Reports SP21。


请在2017年9月等待支持包21

更新:
更多信息

https://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+下载

1
VS 2017 - Tested opening existing app and it works, CR for VS is not integrated into the app so no new CR projects available- should be fully integrated in SP 21

关于发行

链接:https://answers.sap.com/questions/168439/crystal-report-for-vs-2017.html

主持人Don Williams说:

1
Not supported yet, I tried to get it into SP 20 but due to time constraints DEV can't get it into VS until SP 21, due out in September time...


我有解决此问题的方法。我在vs2015中使用查看器创建了dll项目,并在vs2017中使用了该dll。报告显示完美。


从Visual Studio 2010开始,水晶报表不再与Visual Studio一起安装。可以通过从SAP Crystal Reports网站下载安装程序来单独安装它。 SAP Crystal Reports提供两种安装。第一个是Visual Studio的SAP Crystal Reports版本,已安装该版本以在Visual Studio中使用Crystal Reports。另一个是用于.NET Framework的SAP Crystal Reports运行时引擎,当在服务器计算机上部署应用程序时将安装该引擎。

Visual Studio 2017中的SAP Crystal Reports现在计划用于Service Pack / Support Pack 21(自2017年4月4日起)。当前可用的服务/支持包为19。服务/支持包21预计将于2017年9月发布。

您可以使用MSI安装在VS PC上,它不会集成到VS中,因此您将无法在VS IDE中设计报告,但是您的应用程序可以编译。也不会有任何模板,因此只需将CR Viewer添加到工具栏。升级现有的VS应用程序将很容易。

因此,在此期间,要编辑rpt文件,您将需要独立的Crystal Reports Designer,直到Support Pack 21出现为止。

资料来源:

https://forums.asp.net/t/2110984.aspx?VS+2017+and+Crystal+Reports
https://answers.sap.com/questions/168439/crystal-report-for-vs-2017.html


我发表了一个答案,因为我无法发表评论,但我遵循了@DrCJones的步骤。我安装了适用于Visual Studio 2017的新Crystal Reports SP21,并在Windows 10上运行了旧版本。安装程序警告我它检测到旧版本并将覆盖它。安装已经完成,但是当我尝试在VS2017中打开带有报表的项目时出现以下消息:

The Crystal Reports Tools Package did not load correctly

我也无法编辑报告。因此,我手动卸载了VS的CR Runtime Engine和CR,然后重新安装了SP21,最后重新启动了。

现在可以了:)


Crystal Reports SP 19不支持Visual Studio2017。据SAP称,它们的目标是Visual Studio 2017在SP 20中的兼容性,该兼容性暂定于2017年6月发布。


仅供参考:摘自:https://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads

总览

" SAP Crystal Reports,Microsoft Visual Studio开发人员版本"(Visual Studio的SAP Crystal Reports)支持包按季度计划,并支持以下Visual Studio版本:

  • VS 2010 –原始版本及更高版本
  • VS 2012 – SP 7和更高版本
  • VS 2013 – SP 9和更高版本
  • VS 2015RC – SP14
  • VS 2015 – SP 15和更高版本
  • VS 2017-SP 21和更高版本

下载适用于Microsoft Visual Studio的Crystal Reports开发人员


从20/03/2019开始-> Visual Studio的Crystal报表有新版本。
版本是13.0.24。

接受的答案中提供的版本是13.0.21。

较新的版本对我有效,而无需执行任何解决方法。


要将SAP Crystal Reports与Visual Studio 2017集成,需要正确执行以下步骤:

  • 从与Crystal Report相关的系统中卸载所有已安装的组件。 [如果有的话]
  • 安装具有管理员权限的兼容Crystal Report Developer Edition(根据目标VS)。 [撰写本文时,最新的兼容Service Pack为23]

    • 为Visual Studio安装适当的Crystal Report运行时(x86 / x64)。 [不是强制性的]
  • 在VS中打开解决方案,并从与Crystal Report相关的项目中删除所有程序集引用。 [如果有的话]
  • 在项目中包括以下程序集引用:

    • CrystalDecisions.CrystalReports.Engine
    • CrystalDecisions.ReportSource
    • CrystalDecisions.Shared
    • CrystalDecisions.CrystalReports.Design
    • CrystalDecisions.VSDesigner
  • 确保参考属性中的"复制本地"属性设置为"真"。
  • 生成/重建项目。


综上所述,在将我的VB 2010(CR18)升级到VB 2017之后,这对我有用:

  • 卸载所有运行时和CRforVS。
  • 重启
  • 安装CRforVS SP23(在开发人员机器上不需要运行时)。
  • 打开项目,删除旧的DLL引用。
  • 添加新引用(从C:\ Program Files(x86)\ SAP BusinessObjects \ Crystal Reports for .NET Framework 4.0 \ Common \ SAP BusinessObjects Enterprise XI 4.0 \ win32_x86 \ dotnet所需的DLL文件)
  • 全部重建。
  • 玩得开心。

  • 摘自SAP官方网站https://wiki.scn.sap.com/wiki/display/BOBJ/Crystal+Reports%2C+Developer+for+Visual+Studio+Downloads。

    项目#3修复了我的安装。

    这适用于SP 21之后的任何补丁

  • FlexNet和就地升级不起作用:用户从FlexNet服务器收到更新通知并完成SP21升级后,该产品将无法工作。用户必须在"控制面板\程序"中修复CR4VS和CRRuntime64。这是设计更改安装程序。

    一个。请注意,我们在配置FlexNet升级服务器时仍然面临问题,因此当前用户将不会收到SP21通知

  • Microsoft Windows Update KB2999226是SP21的先决条件。

    一个。这与BI 4.2 SP4和BI 4.1 SP10相同。请参考SAP注释2451830。

  • 对于VS2017集成,即使您已经使用管理员帐户登录,用户也需要通过右键单击setup.exe来使用"以管理员身份运行"

  • 由于大多数CR / RAS .NET程序集现在已从13.0.2000.0转换为13.0.3500.0,因此用户必须从"引用"列表中删除所有旧的CR程序集并添加新版本的CR程序集,然后重新构建应用程序。

    一个。对于那些不想重建其应用程序的客户/用户,可以在app.config / web.config中使用替代方法,请参阅附件。

  • WinFormCRViewer.zip

  • 对于使用ADO.Net DB连接的报告,在以前的SP中,您只能在.Net Framework 2.0 / 3.5下工作,因此需要在app.config中使用。现在,在SP21中,仅.Net Framework 3.5或更高版本支持ADO.Net。

  • 我遇到了同样的问题,并通过安装Service pack 22解决了该问题,并对其进行了修复。


    安装VS 2017和Crystal Reports SP21时,VS 2013解决方案存在完全相同的问题。
    实际上,这是因为VS不一定会在首次启动时转换解决方案。

    安装Crystal Report SP 21之后,请确保VS 2017升级了解决方案:必须出现一个窗口,其中" SAP Crystal Reports,Visual版"带有单选按钮"转换解决方案"。

    法语截图:

    enter image description here

    当我使用菜单"文件/打开/项目/解决方案"时,转换未完成。

    我必须这样做:

  • 在任务栏上添加VS 2017
  • 运行VS 2017并使用文件菜单打开解决方案
  • 尝试构建项目,Crystal Reports出现错误
  • VS 2017结束
  • 右键单击VS 2017 shortcur,然后在任务栏中直接打开解决方案
  • 这次运行转换,您可以打开.rpt,并且解决方案构建不会出错。