水 晶 报 表 ( Crystal Report) 的 业 内 最 专 业 、功能最 强的 报 表 系统,它除了强大的 报 表 功能外,最 大的 优势是实现了与绝大多数流行开发工具的 集成和接口。在 VS.Net 平台做过报 表开发的 程序员,一定都对水 晶 报 表 强大、高效、集成等特性留下了深刻印象。除了开发新程序外,在工作中我们常需要接触到很多较早的 软件系统报 表 功能升级的 需求,如果能结合水晶 报 表 这一强大的 工具,往往能事半功倍。 VB 是以前流行的 数据库开发平台,用其开发的 C/S 系统在社会上有非常大的 保有量,但 VB超弱的 报 表 功能往往让程序员面对客户的 升级要求一筹莫展。本文并不做水 晶 报 表 的 使用和编程教学,实际上水 晶 报 表 本身的 使用方法和 VS.Net 平台并没有太大的 差别,我主要是和大家探讨一下 VB 和水 晶 报 表 的 一种较方便的 接口方式。我的 开发测试平台是 Windows2003 Standard 简体中文版、VB6.0+sp5 英文版、Crystal 9.0 简体中文开发版。 关于在水 晶 报 表 中制作报 表 模板的 方法,并非本文的 探讨范围,读者可以参考 Crystal Report的 帮助文件和官方网站的 技术资料。简单地说,首先要通过水 晶 报 表 的 数据库引擎手动连接相应的 表 结构,制作报 表 模板,并保存为 rpt 文件,该项操作和利用 VB 自带的 报 表 工具制作报 表 大同小异。 用 VB 调用水 晶 报 表 进行报 表 开发的 简单接口方法就是,在水 晶 报 表 中用"仅字段定义"来获得字段分布文件,用虚拟的 文件创建表 字段,用 CRAXDRT 对象来强制改变数据源( ADO.recordset) ,其效果相当于在 VB 中调用了 rpt 文件。下面分步骤介绍编程方法。 第一步: 在 VB 工程中 Project 菜单加入"Add Crystal Report 9",报 表 名使用默认即可。这时 Form2( Crystal Rerport 自动添加的 Form,假设名为 Form2) 被自动分配了如下代码: Option Explicit dim Report as New Cystal1 Private Sub Form_Load() Screen.MousePointer = vbHourglass '调用水 晶 报 表 时置鼠标为沙漏状 CRViewer91.ReportSource = Report '该语句的 赋值将在后面被修改 CRViewer91.ViewReport Screen.MousePointer = vbDefault '调 用 水 晶 报 表 完 成 后 置 鼠 标 为 默 ...