预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

VB.Net集成水晶报表的方法CrystalReports是非微软的第三方工具,用于处理数据报表,帮助用户分析和解释重要信息。使用CrystalReports可以方便地创建你所能想象的任何报表。VisualStudio.NET中集成的CrystalReports9(简化版本)赋予.NET平台创建交互式的、高质量展示内容的能力,您可以在Web平台和Windows平台上呈现报表,甚至将Crystal报表作为报表Web服务在Web服务器上发布。介绍VisualStudio.NET集成CrystalReports的资料真是少的可怜,好东东当然不敢独享,所以写下本文,水平有限,还望各位大虾指教。说了这么多,是不是感觉到.NET的无所不能,如果你正在寻找企业报表开发的新大陆,那你可要打起精神,睁大眼睛继续读下去啦!我们用一个简单的实例来说明在VisualStudio.NET中怎样玩转CrystalReports。(本程序代码已在VisualBasic.NET简体中文版调试通过。)实现功能:点击生成报表按钮可根据用户输入的客户ID号生成相应报表(输入0显示所有订单记录),并在CrystalReportViewer控件中预览。须注意的重点:1、怎样在运行时将Crystal报表与后台数据源连接,即安全数据连接。(运行时动态连接数据库可灵活的设置数据环境及避免CrystlReports弹出数据库登陆对话框。)2、怎样让Crystal报表与界面控件交互首先在MS-SQLServer2000中建立一名为"MRP"的实例数据库,其中有"客户"和"订单"两张表。客户表的结构:列名数据类型长度允许空IDVarchar18姓名Varchar8性别Varchar2年龄Decimal5电子邮件Varchar50允许创建时间Datetime8订单表的结构:列名数据类型长度允许空IDVarchar18订单号Varchar8数量Varchar2金额Decimal5创建时间Varchar50客户表与订单表可通过ID字段建立一对多关系。(建库细节请参阅有关书籍)然后,我们就可以在CrystalReportDesigner中设计和修改报表(CrystalReportDesigner已集成在VisualStudio.NET开发环境内),启动方法如下:1、在VisualStudio.NET解决方案资源管理器中,右击您的项目以显示快捷菜单。2、指向"添加",单击"添加新项"。3、在"添加新项"对话框中,从"模板"区域选择"CrystalReport"单击"打开"。4、单击"确定"按钮。CrystalReportDesigner类似于FoxPro的报表设计器。通过数据库专家工具可以建立与数据源的连接;通过插入专家工具可在各节中插入字段、公式、SQL表达式、参数等;通过选择专家工具可以筛选出有用数据;还可以使用Crystl语法和BASIC语法建立灵活的函数、公式等。设计报表并在报表中通过选择专家工具加入一选择公式:{客户.ID}={?ID}(详细建表步骤非本文重点,因篇幅原因,请大家参阅相关资料)现在一切都准备就绪,下面就可以干点正事了!首先新建一个VisualBasic.NETWindows应用程序项目。在解决方案资源管理器中引用CrystalDecisions.CrystalReports.Engine和CrystalDecisions.Shared两个.NET组件。再在表单的声明区中加入:ImportsCrystalDecisions.CrystalReports.EngineImportsCrystalDecisions.Shared按上图所示,在表单中摆放好四个控件,然后在按钮控件的Click事件中编写如下代码:PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickTry'ParameterField类提供属性,以便检索和设置参数字段的选项和值。DimParamFieldsAsNewParameterFields()DimParamFieldAsNewParameterField()'定义CrystalReport离散值DimDiscreteValAsNewParameterDiscreteValue()DimLogOnInfoAsNewTableLogOnInfo()'表示一个报表,并且包含定义、格式化、加载、导出和打印该报表的属性和方法。DimReportAsNewReportDocument()'加载你事先做好的CrystalReport报表文件Report.Load("D:\Temp\Order.RPT")'对报表中的每个表依次循