Delphi

本类阅读TOP10

·分布式网络考试系统原型分析及实现
·游戏外挂设计技术探讨①
·使用HOOK随心监视Windows
·Delphi 水晶报表打包解决
·试题库开发中非文本数据的处理
·如何将几个DBGRID里的内容导入同一个EXCEL表中....的问题
·如何使用Delphi设计强大的服务器程序
·工人线程中关闭窗体的实现
·用DLL方式封装MDI子窗体。
·支持XP下托盘栏气球提示的托盘单元

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
Delphi 7 中如何使用 Crystal Report 9.2(二、Crystal Report 9.2 VCL 的安装)

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

Delphi 7 中如何使用 Crystal Report 9.2

李经通

 

日期

版本

描述

备注

2004-3-12

0.1

Delphi 7 中使用Crystal Report 9 VCL

新建

 

 

 

 

 

 

目录

 

一、       直接使用Crystal Report 9.2 动态库... 2

1     开发环境安装注意事项... 2

2     Delphi 7 中引入Crystal Report Viewer 控件... 2

二、       Crystal Report 9.2 VCL 的安装... 3

1     准备合适的VCL组件... 3

2     安装VCL. 3

3     VCL组件中Demo使用的问题... 6

4     VCL组件中的修改... 7

三、       利用 Crystal Report 9 VCL 编程... 7

1     利用VCL编写程序... 7

2     简单连接数据源代码实现——只使用Tcrpe32组件就可以满足我们的需求... 8

3     复杂数据源实现——需要TcrpeDS辅助实现数据源的连接... 8

4     处理中遇到的问题... 11

四、       如何发布自己的程序... 11

1     利用InstallShield DevStudio 9来制作安装程序... 12

2     运行库说明... 12

3     遇到的一些问题... 14

五、       总结... 14

 

 

一、       Crystal Report 9.2 VCL 的安装

1、 准备合适的VCL组件

下载和自己开发环境匹配的VCL,例如我们现在所使用的是Delphi 7Crystal Report 9,所以选择下载Crystal Reports 9 VCL - supports Delphi 7VCL,地址:http://www.businessobjects.com/products/reporting/crystalreports/vcl/default.asp。或者使用Crystal Report 9中带有的\Program Files\Crystal Decisions\Crystal Reports 9\Samples\chs\Code\Delphi\cr85vcl.exe,注意,这个VCLCrystal Report 8.5的,但也可以使用,但最好使用www.businessobjects.com网站提供最新的VCL

注意:由于Crystal Decisionsbusiness objects收购后, Crystal Report for Delphi VCL的作者Frank已经不提供VCL的更新(Frank的网站已经不能访问了http://mypage.uniserve.ca/~zimmerman/delphi.htm),关于最新资料最好到www.businessobjects.com/support上查询。

 

2、 安装VCL

·将VCL组件文件解压缩到Program Files\Borland\crystal9_vcl 目录下。

·启动Delphi IDE,关闭所有文件。

·主菜单 File | Open,打开Program Files\Borland\crystal9_vcl\Delphi7\dcl7cr9.dpk

·安装组件包

 

·确认安装成功

 

·主菜单Tools | Environment Options…

·编辑库搜索路径

 

·浏览

 

·选取crystal9_vcl\Delphi7

 

·添加

 

·确认添加

·关闭所有文件,注意不要保存相应的包文件

 

3、 VCL组件中Demo使用的问题

在使用Crystal Reports 9 VCL for Delphi 7 时,安装VCL后大家都会去看看VCL里带的例子,但是这些例子经过编译发现不少问题,首先这些例子是在老版本基础上制作的,所以用我们新的VCL和环境编译就会出现错误。

打开Program Files\Borland\crystal9_vcl\Delphi7\Samples\MDI32中的工程,编译发现一系列错误:

错误行:

Crpe1.ExportOptions.FileType := ExcelXLS;

原因是新的VCL里的导出文件类型命名进行了修改,而且对支持的格式也有所变化,所以要针对新的导出文件类型要对代码进行修改。这里的ExcelXLS 就需要修改为MSExcel ,代码中的LotusWK3格式已经在此VCL里不支持了。Crystal Reports 9 VCL for Delphi 7中支持的格式如下:

  TCrExportType = (AdobeAcrobatPDF, CrystalReportRPT, HTML32,

           HTML40, MSExcel, MSWord, ODBCTable, Records, ReportDefinition,

    RichText, SeparatedValues, TabSeparatedText, TextFormat, XML1);

       如果遇到其他问题,可以逐步调试,看是Demo中的问题,还是VCL组件中的问题。

 

4、 VCL组件中的修改

VCL组件中本身就有一些BUG,需要我们进行修改。

·当使用TCrpeDS组件用TTable等数据源时,不能显示字符串字段。

解决办法:打开UcrpeDS.pas,修改282

ftString : pVal := varString;

修改为:

ftString : pVal := varOleStr;

修改完保存,然后重新编译Program Files\Borland\crystal9_vcl\Delphi7\dcl7cr9.dpk

·提示信息汉化的处理

我们在使用的过程中发现,虽然我们用了Crystal Report 9.2中文版本,但通过编写程序后发现我们的程序错误提示信息中包含了英文信息,这是我们不想看到的。例如在Ucrpe32.pas8067行:

MessageDlg('Error: ' + IntToStr(FLastErrorNumber) +

   Chr(13) + Chr(10) + FLastErrorString, mtError, [mbOk], 0);

明显看出错误信息中加入“Error”单词,我们可以对其进行修改为:

MessageDlg(FLastErrorString, mtWarning, [mbOk], 0);

 

同样道理,根据自己实际情况检查代码,如果需要修改,可以对VCL代码修改后然后保存,重新编译,就会达到自己所需要的效果。

 

 




相关文章

相关软件