当前位置:首页 > VB如何调用Crystal Reports
VB如何调用Crystal Reports
VB如何调用Crystal Reports
shkingdee 在VB中利用Crystal ActiveX控件制作报表 在自行开发的应用软件中,一般都需要制作报表。我们可以利用Crystal
Reports(也称水晶报表)方式,调用Print方法直接输出,通过其他(
TextBox等)控件输出报表,使用OLE技术与Word和Excel连接输出报表。Crystal
Reports方式需要许多文件支持,通常需要耗用更多的系统资源,但与其他方法
相比,具有容易实现、功能强大、报表样式丰富的特点。 用Crystal ActiveX控件制作报表一般有两种方法: 1. 直接使用Crystal ActiveX控件生成报表。 2. 先用CRW32.EXE产生RPT报表文件,然后在控件中引用RPT文件。
常用报表大约有:列表式的报表;带有分类、汇总式的报表;以及带有各种
图形、图表的报表。下面就这两种方法举例说明几种报表的制作。
一、 直接使用Crystal ActiveX控件生成报表
使用Crystal ActiveX控件应先建立数据库,Crystal ActiveX控件支持流行
的数据库类型,如:Access、xBase、Paradox。直接使用Crystal ActiveX 控件
只能制作简单的列表式报表。
1. 新建一个工程,在窗体Form1上添加Data 控件,Crystal ActiveX控件, 命令按钮。
2. 在Data 控件上将DatabaseName 属性设置为要生成报表的数据库名称, 如Biblio.mdb。
设置 RecordSource 属性为数据库中表名称或SQL查询语句。这里我们设置 成表Authors。
3. 在Crystal ActiveX控件上设置 DataSource 属性为Data1,设置
ReportSource 属性为3。 ReportSource 属性: 0 - 使用RPT报表文件; 1 - 绑定到TrueGrid控件 ; 3 - Data 控件所有的 Fields。 设置Destination属性为0。
Destination 属性: 0 - 输出到窗口; 1 - 输出到打印机; 2 - 输出到文件;
3 - 通过MAPI Email将报表发送到别处; 4 - 通过VIM Email将报表发送到别处。 若使用属性2,需要设置PrintFileName、 PrintFileType等相关属性。
若使用属性3、4,需要设置EMailToList、EMailCCList、EMailMessage等相关属性。 设置WindowState 属性为2。 WindowState 属性: 0 - 打印窗口正常方式; 1 - 打印窗口最小化; 2 - 打印窗口最大化。
4. 对于报表的激活,Crystal ActiveX 控件提供两个途径:属性Action等
于1;或者使用PrintReport方法。PrintReport方法可以返回错误代码,以便于 进行错误处理。 在按钮上增加代码
Private Sub Command1—Click()
CrystalReport1.Action = 1 End Sub
代码也可以写成:
Private Sub Command1—Click() Dim Result%
On Error GoTo Err—handler Result% = CrystalReport1.PrintReport Err—handler: Select Case Result% Case 20xxx: ′此处错误处理 End Select End Sub
错误处理,可参阅水晶报表CRW32.EXE帮助→DEVELOPER→The Crystal ActiveX
Control→Error Messages。该处提供详细的错误信息以及出错原因。
运行程序,单击命令按钮,就可预览、打印按列列表的报表了。
二、 使用RPT报表文件制作报表
使用报表文件(*.RPT)可以制作前文所述的三种报表。推荐使用这种方法制作
共分享92篇相关文档