报表作为一种分析数据的工具,主要用来让用户查看分析结果,但如果用户的机器上没有安装报表工具,该如何查看呢?这是可以将其导出为各种文件格式,以供用户查看。本节将对报表导出设计方案进行详细介绍。
6.7.1 CrystalReportviewer控件方案Crystal Reports for Visual Studio 2005的所有版本中提供的报表查看器控件都是CrystalReportViewer控件。CrystalReportViewer控件封装了在窗体上正确显示报表所需的全部显示信息。它还具有用于配置该控件的外观的属性。使用CrystalReportViewer控件工具栏中的导出按钮可以快速将报表数据导出不同文件的类型。
1.方案分析在保存报表文件的时候,报表文件只能以扩展名.RPT保存在磁盘上。这种Crystal Report独有的.RPT文件格式只能在某些特定环境下使用查看效果。由于需查看报表的人不可能都装有Crystal Report系列产品工具,所以就产生了多种方法将报表文件.RPT转换成不同文件格式,以方便用户查看。
CrystalReportViewer控件工具栏中的【导出】按钮,不需要编写任何代码就能方便快捷的将报表文件格式转换为,RPT、PDF、DOC、XLS或RTF等文件格式。
2.实施过程实例位置:光盘/ mr/06/6.7/6.7.1/01
本实例,使用CrystalReportViewer控件工具栏中的【导出】按钮,将报表数据导成.PDF格式的文件,如图6.144所示。
图6.144 导出.PDF文件效果
CrystalReportViewer控件导出报表方案的实施步骤如下:
(1)使用CrystalReportViewer加载和显示报表,单击控件工具栏中的【导出】按钮,如图6.145所示。
图6.145 单击【导出】按钮
(2)弹出“导出报表”对话框”,在“请从列表中选择导出格式”下拉列表框中选择“Acrobat格式(PDF)”选项,选择“所有”单选按钮。如图6.146所示。
图6.146 “导出报表”对话框
(3)单击【确定】按钮,弹出“文件下载”对话框,如图6.17所示。
图6.147 “文件下载”对话框
(4)单击【保存】按钮,弹出“另存为”对话框,选择保存文件的路径,如图6.148所示。
图6.148 “另存为”对话框
(5)单击【保存】按钮,保存文件,弹出“下载完毕”对话框,可以单击【打开】按钮查看保存的文件,如图6.149所示。
图6.149 “下载完毕”对话框
3.补充说明使用CrystalReportViewer控件的最佳做法,高效的Web应用程序会将其表示层与其基础业务逻辑明确分开。
ASP.NET控件的设计在本质上就提倡这种方式。它将表示信息封装到控件中,然后将该控件绑定到执行业务逻辑的基础对象或对象模型。
CrystalReportViewer是一个遵循此结构的.NET控件。它在Web或Windows窗体(表示层)上起一个显示对象的作用,并且可以绑定到以下报表对象模型中的任何一个。
l ReportDocument对象模型。
l 可通过升级获得的对象模型。
² ReportClientDocument对象模型(Report Application Server)
² InfoObject对象模型(Crystal Reports Server或BusinessObjects Enterprise)
在最佳方案中,CrystalReportViewer控件绑定到其中一个执行业务逻辑(通常是对报表进行操作)的对象模型。
在该方案中,CrystalReportViewer控件将其编程交互限制为只修改显示设置,例如,隐藏或显示查看器的工具栏或该工具栏中的一个按钮。
6.7.2 ReportDocument对象方案ReportDocument对象模型最常见的应用方法之一就是运行报表并导出到另一种文件格式。ReportDocument类属于CrystalDecisions.CrystalReports.Engine命名空间。它起到一条通道的作用,通向Engine命名空间中的一组类,这些类为通过编程方式对报表进行操作提供了