-
VB.NET水晶报表控件经验总结
- http://developer.51cto.com 2009-10-16 13:30 佚名 weaseek 我要评论(0)
学习VB.NET时,你可能会遇到VB.NET水晶报表控件问题,这里将介绍VB.NET水晶报表控件问题的解决方法,在这里拿出来和大家分享一下。
Crystal Reporter(水晶报表)
做为一个优秀的报表软件,水晶报表是实际应用中最多的方案。在这一节里主要介绍一下水晶报表的定制和显示,打印功能的实现。首先要区分水晶报表插件程序和VB.NET水晶报表控件。前者主要用来创建报表模板,后者主要是用来在程序中显示和打印报表,这两者的分工决定了它们程序中的功能的不同。其中水晶报表的插件程序可以从Seagate公司的官方网站上下载最新的测试版本。
1.VB.NET水晶报表控件程序的使用
选择"外接程序"菜单的"报表设计器"选项,则VB将执行水晶报表 Pro插件应用程序。在水晶报表 Pro里选择"新建报表"图标,可以选择8标准模板和一个自定义的模板来开始报表工程。
整个水晶报表的使用跟第一节的Data Report的使用很类似。首先需要给报表选择数据源,(即数据库),然后就可以在报表中添加、删除、修改字段以及为记录分组,可以利用水晶报表创建很多具有自定义风格的报表。由于本身水晶报表插件程序就是一个功能强大的报表设计软件,这里就不能一一的讲解了,有兴趣可以参考程序自带的帮助文档。
2.VB.NET水晶报表控件的背景知识
水晶报表 Pro还提供一个报表生成模块,该模块可以连接到并访问VB应用程序,VB程序员不需花费大量时间写自己的代码就可再应用程序中添加复杂的报表生成及输出功能。
水晶报表引擎是一个动态链接库,它可以使应用程序访问并具有同水晶报表 一样强大的报表输出功能。应用程序是通过水晶报表 ActiveX控件来访问引擎。再编译时应用程序同报表引擎链接,以给应用程序添加了生成报表的功能。
当程序使用水晶报表 ActiveX控件时,可以通过再设计时设置Crystal对象属性或者再运行时改变对象属性,来建立应用程序和水晶报表之间的连接。通过Crystal控件的属性可以指定:
◆响应应用程序某个事件的输出报表的名字。
◆报表的目标位置(预览窗口、磁盘文件或者电子邮件等)。
◆想要打印的份数(如果报表提交给打印机的话)。
◆输出文件的信息。
◆预览窗口的大小及位置信息(如果报表在预览窗口中显示时)。
◆选择公式信息(如果在报表中限制记录的话)。
◆排序信息。
◆其他相关的属性。
这里要注意一点的是,Crystal控件必须在由水晶报表 Pro创建的报表中使用,而试图在VB应用程序里引用之前,必须首先创建报表。
3.VB.NET水晶报表控件的使用
了解了VB.NET水晶报表控件的功能,那么就可以使用它了。首先通过"工程"的"部件"选项里面选择"水晶报表 Control",那么VB的工具箱里面就添加了VB.NET水晶报表控件了。
注意,对于VB.NET水晶报表控件的最重要的属性就是ReportFileName了,把它设置为前面已经在水晶报表 Pro里定制好的报表模板的文件路径。那么只需要调用控件的PrintReport方法就可以将报表显示出来了。
相对于Data Report控件来说,VB.NET水晶报表控件的功能更加的完善,报表预览,打印,编辑修改等功能都很完善,所以在实际的报表应用设计方案中,使用水晶报表的相对较多。然而VB.NET水晶报表控件也有它的局限性,即它不能在运行时创建自定义的窗口。可以使用控件的数据绑定属性来创建数据绑定报表,但是报表本身的格式都是由 VB.NET水晶报表控件内部进行处理的。一般说来,VB.NET水晶报表控件不提供在程序中对报表字段级的访问。这一缺陷可以通过设计出足够多的报表来弥补。
【编辑推荐】