1.首先下载Crystal Reports13对于Visual Studio 2015支持的2个文件。

CRforVS_13_0_17

CRforVS_redist_install_64bit_13_0_17

如果你使用的是其它版本的Visual Studio,请查看官方给出的文档,下载相应的版本,具体请参考次地址:http://scn.sap.com/docs/DOC-7824

注意:版本号后边的13_0_17为小版本号,下载时2个文件的小版本号要相同。

2.重启VS,在项目上新建项,此时多了一个Repoting的项目模板,模板里边包含一个Crystal Report的选项,选中即可创建报表模板的.rpt文件。

3.在使用水晶报表的网站项目上,添加如下4个引用,引用在项目的Nuget包管理里边进行搜索。

CrystalDecisions.CrystalReports.Engine

CrystalDecisions.ReportSource

CrystalDecisions.Shared

CrystalDecisions.Web

如果你的项目是C/S的程序,也可以引用CrystalDecisions.Windows.Forms来替换CrystalDecisions.Web

4.打开电脑的如下文件夹:C:\inetpub\wwwroot,在文件里边找到一个 aspnet_client,文件夹,将此文件夹拷贝到网站项目的根目录。

这个文件夹里边的文件,是水晶报表打印页面的所需UI样式文件,如果不拷贝这个文件夹,打印页面看不到任何东西,包括水晶报表打印的工具栏。

以上4步完成后,即可调用模板文件进行打印了!

服务器部署:

首先在服务器上安装CrystalReports的运行时,我安装的版本是CRforVS_redist_install_32bit_13_0_17,这个地方最好是下载32位的版本,我原来安装的64位版本就出现了问题2的错误,网站正常部署就可以,把IIS网站的应用程序池,高级设置选项里边的启用32位应程序选项设置为true,还有就是把报表的rpt文件拷贝服务器,因为发布的时候这个文件不能发布出来,否则也会报错!

以下是开发完成后再服务器部署时遇到的一些问题:

问题1.未能加载文件或程序集“log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304”或它的某一个依赖项。系统找不到指定的文件。

问题是我也没用到log4net啊,按照网上的方法把你开发机器上的C:\Windows\assembly\GAC_32\log4net\1.2.10.0__692fbea5521e1304\log4net.dll,这个dll拷贝到服务器网站bin的文件夹即可,不要从其途径引用log4net.dll文件,我试了即使是相同版本的也不行。

问题2.尝试加载 Crystal Reports 运行时时出错。可能是因为 Crystal Reports 注册表项权限不足,或未正确安装 Crystal Reports 运行时。请安装包含所需的正确 Crystal Reports 运行时版本(x86、x64 或 Itanium)的相应 Crystal Reports 再分发文件(CRRedist*.msi)。有关更多信息,请访问 http://www.businessobjects.com/support。

这个问题我花了好长的时间,原因是因为Crystal Reports得运行时版本必须要安装32位的,我原来安装的是CRforVS_redist_install_64bit_13_0_17,换成CRforVS_redist_install_32bit_13_0_17就可以显示报表的控件了,如果还是不好用就把IIS网站的应用程序池,高级设置选项里边的启用32位应程序选项设置为true

问题3.不支持的操作。无法在 C++ 堆栈中打开由 JRC 引擎处理的文档

这个问题是因为,没有找到报表文件,在发布网站的时候,VS忽略.rpt这种格式文件的发布,所有需要你手动把报表文件,或者包含报表文件的文件夹放到网站相应位置!

最新文章

  1. we are the champion!!!!
  2. Sublime Text 3安装插件指南
  3. 51nod 1165 整边直角三角形的数量
  4. SQL生成随机数
  5. Swift - 自动布局库SnapKit的使用详解4(样例1:实现一个登录页面)
  6. 项目源码--Android视频MV类网站客户端
  7. angular这个大梗的学习笔记
  8. mysql创建自定义函数与存储过程
  9. 最新Android 出现Please ensure that adb is correctly located at问题的解决方法
  10. C#之out与ref的共性与区别以及用法
  11. Xml读取异常--Invalid byte 1 of 1-byte UTF-8 sequence
  12. log在线生成器 html中如何设置浏览器中标题前的logo
  13. [C++]Store Credit——Google Code Jam Qualification Round Africa 2010
  14. 解决 下载 CM-12.0 源代码出现 Fatal: duplicate project .....问题
  15. 实现 ready和bind事件
  16. 每天一个JS 小demo之通过事件委托实现菜单展开及选中特效。主要知识点:事件
  17. webpack4.0各个击破(3)—— Assets篇
  18. python-装饰器实现pv-uv
  19. JDK命令行(jps、jstat、jinfo、jmap、jhat、jstack、jstatd、hprof)与JConsole
  20. kickstart ---无人值守安装

热门文章

  1. IIS启用.net2.0
  2. C#综合揭秘——细说多线程
  3. pushState onpopstate
  4. [Angular2 Router] Use Params from Angular 2 Routes Inside of Components
  5. Perl的DATA文件句柄
  6. Cocos2d-html5 笔记2: director
  7. 使用Ant命令压缩JavaScript文件
  8. ThinkPHP中pathinfo模式与URL重写
  9. 编译器失败,错误代码为xxx
  10. ScriptTransformer