在这里我主要想和大家讨论一下Crystal Report的总体框架模式方面的问题,重点是如何使用VB有效的融合报表和数据,快速的进行报表开发工作。希望抛砖引玉,找到几种最好最快的开发模式。
本文暂不涉及技术细节,所以您可能觉得太过简单。但这样的问题的确是我们开发中的第一号大问题。在以后的讨论中,我们可以针对具体的问题讨论具体的技术细节。
我准备了一份源代码,已经发给了部分网友,但是没有做详细的测试。我准备在明后天做完测试,如果各位有需要的话,应该在星期一左右可以发给你们(唉,星期六星期天还要加班!)。
注意:有需要的朋友请跟帖说明,不要只给我发短消息。
缩写语说明
RPT Crystal Report Template File. 使用Crystal Report设计器生成的报表样式和模板文件,后缀名为RPT
RDC Crystal Report Designer Component. Crystal Report的对象模型,用于在VB中操作Crystal Report.
CRV Crystal Report Viewer. OCX 控件,用于在VB中提供报表预览界面。
CRC Crystal Report Control. OCX 控件,在Crystal Report 8.0以前用于在VB中提供报表预览界面,现已被CRV取代。
CDO Crystal Data Source Object. Crystal Report 提供的数据源对象,用于创建与数据库无关的动态数据源。
一,如何动态获取数据,生成报表?
报表的一个主要特征就是根据事先设计好的模板样式和运行时的动态数据生成一份可查看与打印的文档。
一般来说,VB的程序中整个报表流程中的主线,由它来对Crystal Report及其它工具发号施令,实现用户需求。
VB是通过RDC模型来操作CrystalReport的。通常有如下两种模式生成报表:
1,VB-RPT-DB
VB调用RPT文件,RPT文件查询数据库得到数据,生成报表。此方法的详细流程如下:
1)在Crystal Report 中设计好RPT文件,设计时可在CrystalReport中连接到数据库,得到查询数据,即时预览报表。
2) 在VB中,通过RDC模型打开RPT文件,并将运行时和数据库连接所需的信息,如数据库名,用户,密码等传给RPT文件,如果RPT文件中有参数,还要传入参数。
3)RPT文件连接到数据库,执行查询得到数据,生成报表。
4) 在VB中,通过CRV控件打开报表进行预览或通过RDC模型进行打印,