让Crystal Report【水晶报表】助你编程>马到成功!

    注:这是我几年前的一篇稿件,欠妥之处,欢迎批评指正!

     从事开发设计软件的朋友都清楚,在软件项目千头万绪中,唯有打印输出是要格外地仔细地推敲和认真实施;这“打印”乃是项目完成划句号前的亮点,我们要一气呵成,让用户满意,让用户放心。

在国内现阶段,与编程语言、数据库语言搭配较理想、较成功的打印工具就是Crystal Report“水晶报表”。它既能支持多种编程语言又能支持多种数据库系统,如今发展到Web领域,均受到业内人士的关注与好评,由“水晶报表”工具为编程保驾护航,让Crystal Report助你编程更“爽”。

为了便于与使用数据库系统开发程序的朋友对Crystal Report“水晶报表”技术方面有所认识,便于我们进行学习与交流,下面将Crystal Report“水晶报表”的安装、快速入门与应用技巧进行介绍;拉近我们与Crystal Report“水晶报表”的距离,方便您在设计上的动手能力,提高设计报表的能力水平。具体内容如下:

注:[软件环境;SQL Server2000中文版 和Crystal Report9.0专业版]

一、Crystal Report“水晶报表”如何与数据源进行连接?

答:我们现在使用的数据源分为两类:①.数据文件,它包括:Access、Pardox、Xbase等。②.ODBC数据源,我们常见的客户、服务器数据库如:SQL Server2000、Sybase、Oracle等。

Crystal Report“水晶报表”在与上述①.②.连接是进入“水晶报表9.0à使用报表向导[确认]à选择:标准[确认]à可用数据源界面选择[.创建新连接:①Access/Excel (DAO)用鼠标双击命令行去确认你要使用的数据文件。②.ODBC (RDO)用鼠标双击命令行选择ODBC数据源中一个DSN文件]à完成。这样就完成了两类不同数据源的连接。可进入报表界面设计你的报表文件。

建议:善于使用多表关联的朋友,应事先将多表定义为“视图”文件,这样对制作报表十分方便。

二、Crystal Report“水晶报表”能够做哪几种报表?

答:Crystal Report“水晶报表可制作:标准报表;交叉表;邮件标签;OLAP。

一般我们在设计管理软件中,大多使用:标准报表[其中包括:主、子报表]和交叉表。邮件标签主要是设计信签。在财务软件设计中,我们曾用这种方式设计过“会计凭证”输出打印。

三、Crystal Report“水晶报表”库文件已更新而报表内容不能更新怎么办?

答:这是设计报表存盘前时,少点开一个[]设置;这个设置在“水晶报表9.0à文件à选项à建立报表下[第二行][ ]将数据与报表一起保存(S),点开一个[]并确认;以后,数据更新同时报表也进行更新。

四、Crystal Report“水晶报表”能够同时即做表也显示图型吗?

答:可以。使用交叉表效果最佳,图型在上方,报表在下方(它的取值范围一致);若是标准报表,建议在调用打印窗体上做两个命令按钮;1.报表输出。2.图型输出。因为图型的取值范围与报表的取值范围不尽相同。

五、Crystal Report“水晶报表”中,使用公式注意什么?

答:1.要注意使用公式要符合数学的定义;如:除数不能等于“0”,求C=A/B*100

@C的公式应写:IF B<>0 Then A/B*100 Else 0 ;不能写:A/B*100

2.引用“公式”变量,请选用[公式编辑器]方式,符合Crystal 语法格式。

六、旧Crystal Report“水晶报表”[*.rpt]文件能更新升级吗?

答:是的,可以升级更新。但,你若不留好备份的话,此文件就不能还原。

建议要是Crystal Report“水晶报表”版本不同,应保留好低版本的[*.RPT]文件。

七、报表打印用大于A4纸如何解决?

答:Crystal Report“水晶报表”的缺省方式:A4。纸号的大与小是可调整的;从“打印机设置”中进行调整。假如,你只装了窄行打印机,又想做宽表怎么办?

可在Win9.X,WinXP下“开始à设置à打印机à添加打印机àEPSON 1600IIIK”并设为“默认”,Crystal Report“水晶报表”就可以编辑A3尺码的大表。

八、Crystal Report“水晶报表”能够导出数据文件吗?

答:在数据库环境下可导出七种格式文件,主要有:*.PDF;*.XLS;*.doc;*.txt等。

   属性设置,如:VB6在打印的窗体中将CRViewer91.EnableExportBotton.TRUE后,在运行打印时,报表就增加了数据导出功能。

九、能否将“报表标题”自动更新而减轻报表的工作量?

答:可以通过变通的方法做到。在“水晶报表”设计器上,利用数据库中的“表”或“视图”我们可以方便地制作出符合设计要求的报表;可利用参数传递来解决【报表标题】的问题;包括有【单位名称,报表名称,统计日期区间,报表计量单位等信息】可根据需要设置;每次调用打印窗体前,更新“报表标题”信息的“参数”的内容即可,这样就达到“报表标题”自动更新而减轻报表的工作量;做到:只改参数代码,不修改报表。

十、报表输出时,如何处理好数据的排序?

答:报表输出达到显示排序后的数据。方法分为两个方面,1.用SQL Server2000 中的语句来解决排序问题,可将设计打印的“表”定义成与“需”计算用的“表”为相同结构专供打印用“表”,每次打印前将该“表”清空,用使用SQL语句进行排序后“表”的数据插入空“表”供打印使用。2.通过Crystal Report“水晶报表”设计器中的排序专家来定义报表排序字段;定义是升序还是降序。

 

结束语.这里用一句:“您所考虑的和需要正是我们所关注的也是我们所做的。”来结束『让Crystal Report 离我们再近些』的介绍;愿您在使用数据库和水晶报表工具软件的每一天都有一个好心情。

 

 

 

posted on 2009-02-15 16:17  津东方  阅读(2686)  评论(4编辑  收藏  举报

导航