如何将 .NET 程序迁移到 Crystal Report 9.2

新增10、问题:无效的报表源
新增9、如果你用的是 VS.NET  2003,则 Crystal Reports 9 (版本 9.2.0.x) 不能正确运行,需要升级到 CR 9 (版本 9.2.2.x).  
——————————————————————————————————————
引言:
  期盼已久的,基于 Web 的,水晶报表打印,导出功能已经在 Crystal Report 9.2 里实现!
  但安装 Crystal Report 9.2 后,原有的 .NET 程序仍然无法拥有这些超级实用功能,原因何在?!
  在.NET 里,DLL Hell 问题被解决——包含元数据的,具有自描述性的程序集及其 XCopy 部署!
  但是,又似乎带来了新的问题——.NET 程序升级、迁移问题……
  升级不再只是简单安装,有工作不得不做了……
——————————————————————————————————————
目录
1、安装 Crystal Report 9.2……
2、修改 Visual Studio.NET 的工具箱设置
3、“旧版本的报表文件”的升级……
4、“旧版本的 CrystalDecisions 程序集引用”的修改……
5、“Web 窗体文件中,水晶报表命名空间引用”升级……
6、“Web.config 中的,水晶报表相关的程序集”升级……
7、问题:我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
8、问题:在web.config中新建一个工程时没有<assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
9、问题:就是不行。 升级后没有拖放控件没有代码(1)!!!
10、问题:无效的报表源
——————————————————————————————————————
1、安装 Crystal Report 9.2……
首先卸载以前版本的 Crystal Report,如 Crystal Report For VS.NET,Crystal Report 9.0……
然后安装!
这样可以避免很多问题:
——————————————————————————————————————
2、修改 Visual Studio.NET 的工具箱设置
(1)右击“工具箱”,选择“自定义工具箱”,进入“自定义工具箱”对话框;
(2)选择“.NET 框架组件”选项卡,点击“程序集名称”列标题,使其根据“程序集名称”排序显示;
(3)取消选择所有 CrystalDecisions 版本为 9.1.xxxx.x 的组件;
(4)点击“浏览”按钮,选择“C:/Program Files/Common Files/Crystal Decisions/2.0/managed”文件夹,分别添加
CrystalDecisions.CrystalReports.Engine.dll:增加组件 ReportDocument、ReportClass,
CrystalDecisions.Web.dll:增加组件 CrystalReportViewer
CrystalDecisions.Windows.Forms.dll:增加组件 CrystalReportViewer
——————————————————————————————————————
3、“旧版本的报表文件”的升级……
用 Crystal Report 9.2 打开报表,做任意操作,然后撤销,最后保存,就会升级报表。
注意:升级后,不能用旧版本的 Crystal Decisions 产品使用……
——————————————————————————————————————
4、“旧版本的 CrystalDecisions 程序集引用”的修改……
(1)CrystalDecisions 程序集:
CrystalDecisions.CrystalReports.Engine
CrystalDecisions.Web
CrystalDecisions.Enterprise.Report
CrystalDecisions.ReportSource
CrystalDecisions.Shared
等等……
(2)存放“程序集引用”的文件——项目文件;扩展名为 ??proj,例如:C# 项目扩展名为 csproj
原引用,如 crystaldecisions.web:
<Reference
       Name = "crystaldecisions.web"
       AssemblyName = "CrystalDecisions.Web"
       HintPath = "../../../winnt/assembly/gac/crystaldecisions.web/9.1.3300.0__692fbea5521e1304/crystaldecisions.web.dll"
/>
升级后的引用:
<Reference
    Name = "crystaldecisions.web"
    AssemblyName = "CrystalDecisions.Web"
    HintPath = "../../../winnt/assembly/gac/crystaldecisions.web/9.2.3300.0__692fbea5521e1304/crystaldecisions.web.dll"
/>
(3)修改项目的“引用路径”:
在解决方案资源管理器里,右击项目,选择属性,进入项目属性页;
选择通用属性-〉引用路径:
c:/winnt/assembly/gac/crystaldecisions.web/9.2.3300.0__692fbea5521e1304/
——————————————————————————————————————
5、“Web 窗体文件中,水晶报表命名空间引用”升级……
原引用:
<%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
升级后的引用:
<%@ Register TagPrefix="cr" Namespace="CrystalDecisions.Web" Assembly="CrystalDecisions.Web, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" %>
——————————————————————————————————————
6、“Web.config 中的,水晶报表相关的程序集”升级……
原引用:
<compilation defaultLanguage="c#" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.1.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
……
升级后的引用:
<compilation defaultLanguage="vb" debug="true"><assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
……
——————————————————————————————————————
7、问题:我升级了CrystalReport9.2,现在CrystalReportViewer不能往设计视图上拖放了,为什么?
解决方案:
1、右击“工具箱”上的选项卡,选择“自定义工具箱”,进入“自定义工具箱”对话框,选择“.NET框架组件”选项卡;
2、有四个 CrystalReportViewer,分别是:
CrystalDecisions.Web(9.2……
CrystalDecisions.Web(9.1……
CrystalDecisions.Windows.Forms(9.2……
CrystalDecisions.Windows.Forms(9.1……
选中:
CrystalDecisions.Web(9.2……
CrystalDecisions.Windows.Forms(9.2……
去除:
CrystalDecisions.Web(9.1……
CrystalDecisions.Windows.Forms(9.1……
总结:
可以看出,其实就是 9.1.3300.0 改成 9.2.3300.0!!!
这样,升级水晶报表文件后,直接替换所有文件(Web.config,项目文件,Aspx 文件)中该替换的地方,OK!!!
——————————————————————————————————————
8、问题:在web.config中新建一个工程时没有<assemblies><add assembly="CrystalDecisions.CrystalReports.Engine, Version=9.2.3300.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
我手工添加后出现配置错误!!!
解决方案:
新建一个解决方案,添加 Crystal Report Viewer,然后用它的 Web.config 覆盖原来的程序……
——————————————————————————————————————
9、问题:就是不行。 升级后没有拖放控件没有代码(1)!!!
问题分析:
如果你用的是 VS.NET 2003,则 Crystal Reports 9 (版本 9.2.0.x) 不能正确运行,需要升级到 CR 9 (版本 9.2.2.x). 
具体问题如下:
- 添加新报表到项目,却没有生成相应的报表类文件
- 添加新报表或者报表查看器(viewer)到项目,却没有自动添加必需的引用
- 不能创建强类型报表(strongly-typed report)的实例
解决方案:
升级到 CR 9 (版本 9.2.2.x). 
——————————————————————————————————————
10、问题:无效的报表源
问题分析:
ReportDocument、CrystalReportViewer 组件和 CrystalDecisions 程序集的版本不一致:
解决方法:
(1)删除所有的 CrystalDecisions 程序集引用;
(2)删除所有的ReportDocument、CrystalReportViewer 组件;
(3)按照2、修改 Visual Studio.NET 的工具箱设置;
(4)重新添加组件,自动生成新引用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Crystal Reports 9.2 中文版(水晶报表) 下载,,软件版本:9.2.0.448不过现已出了Crystal Reports Professional v9.2.2.634 (c) Crystal Decisions,有足够的空间就提供.这是一个很不错的报表控件,我相信很多朋友都听说过吧!Crystal Reports 用于处理数据库,帮助用户分析和解释重要信息。使用 Crystal Reports 可以方便地创建简单报表,同时它也提供了创建复杂或专用的报表所需的整套工具。 创建所能想象的任何报表 Crystal Reports几乎可以从任何数据源生成您需要的报表。内置报表专家在您生成报表和完成一般的报表任务过程中,会一步一步地指导您进行操作。报表专家通过公式、交叉表、子报表和设置条件格式帮助表现数据的实际意义,揭示可能被隐藏掉的重要关系。如果文字和数字确实不够充分,则用地理地图和图形进行形象的信息交流。 将报表扩展到 Web Crystal Reports 的灵活性并未停留在创建报表这一功能上 ?您可以用各种各样的格式发布报表,包括用 Microsoft 的 Word 和 Excel 发布、通过电子邮件甚至 Web 发布。高级的 Web 报表功能允许工作组中的其他成员在他们自己的 Web 浏览器中查看或更新共享报表。 将报表并入应用程序通过将 Crystal Reports 的报表处理功能整合到自己的数据库应用程序中,应用程序和 Web 开发人员可以节省开发时间并满足用户的需求。Crystal Reports 支持大多数流行的开发语言,可以方便地在任何应用程序中添加报表。 不论您是 IT 行业的站点管理员,还是营销推广经理,也无论您是金融业的数据库管理员还是 CEO,Crystal Reports 都堪称是一个功能强大的工具,它可以帮助每一个人分析、解释重要信息。感谢 revenant 上传!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值