水晶报表基础入门——7.晶报表导出数据技术1
6.1.6 水晶报表导出数据技术
对象模型最常见的应用方法之一是运行报表并导出到另一种文件格式。ReportDocument对象是CrystalDecisions.CrystalReports.Engine命名空间下的成员类,它表示一个报表,并且包含定义、格式化、加载、导出和打印该报表的属性和方法。ReportDocument对象提供以下几种导出报表数据的方法。
l ExportToDisk方法
将报表以指定格式导出到文件中。这是导出报表最简单的方法;通过接受变量来指定导出格式类型和导出的文件名。在只需要导出一个文件到磁盘上的时候,这种方法很有用。
语法:
public virtual void ExportToDisk(CrystalDecisions.Shared.ExportFormatTypeformatType ,string fileName )
参数说明:
formatType:用来导出报表的格式类型。FormatType值是一个ExportFormatTypeformatType枚举类型值,ExportFormatTypeformatType枚举类型值及说明如表6.4所示。
FileName:用来导出报表的文件名。
表6.4 ExportFormatTypeformatType枚举值及说明
成员
|
说明
|
CrystalReport
|
报表的导出格式是Crystal Report文件
|
Excel
|
报表的导出格式是Microsoft Excel文件
|
ExcelRecord
|
报表的导出格式是Excel记录文件
|
HTML32
|
报表的导出格式是HTML 3.2文件
|
HTML40
|
报表的导出格式是HTML 4.0文件
|
NoFormat
|
未指定导出格式
|
PortableDocFormat
|
报表的导出格式是PDF文件
|
RichText
|
报表的导出格式是Rich Text文件
|
WordForWindows
|
报表的导出格式是Microsoft Word文件
|
l ExportToStream方法
此方法只能接受一个单独的变量,导出格式类型。方法返回值是System.IO.Stream对象。
语法:
public virtual System.IO.Stream ExportToStream(CrystalDecisions.Shared.ExportFormatType formatType)
参数说明:
formatType:用来导出报表的格式类型。FormatType值是一个ExportFormatTypeformatType枚举类型值,ExportFormatTypeformatType枚举类型值及说明如表6.4所示。
返回值:包含字节序列形式的导出报表的流。
l ExportToHttpResponse方法
此方法将报表以指定格式导出到响应对象中。其有两种重载形式。
语法:
public virtual void ExportToHttpResponse(CrystalDecisions.Shared.ExportFormatType formatType,System.Web.HttpResponseresponse,bool asAttachment,string attachmentName);
参数说明:
formatType:用来导出报表的格式类型。FormatType值是一个ExportFormatTypeformatType枚举类型值,ExportFormatTypeformatType枚举类型值及说明如表6.4所示。
Response:页面的响应对象。
AsAttachment:指示是否将报表导出为响应的附件。
AttachmentName:用来导出报表的文件名。
Public virtual void ExportToHttpResponse(CrystalDecisions.Shared.ExportOptions options,
System.Web.HttpResponse response ,bool asAttachment ,string attachmentName);
System.Web.HttpResponse response ,bool asAttachment ,string attachmentName);
参数说明:
options:报表的导出选项。
response:页面的响应对象。
asAttachment:指示是否将报表导出为响应的附件。
attachmentName:用来导出报表的文件名。
ExportToHttpResponse()方法不支持导出为HTML32和HTML40格式的HTTP响应。因此,当尝试导出为HTML32或HTML40时,会出现错误消息。
如果asAttachment布尔值变量设置为True,则会出现“文件下载”对话框。如果asAttachment布尔值变量设置为False,导出的报表会在浏览器窗口中打开。
当选择保存文件时,文件名设置为attachmentName字符串变量。如果不指定attachmentName变量,则默认文件名为“无标题”,并带有指定的文件扩展名。可在“另存为”对话框中更改文件名。
l Export方法
将报表导出到在ExportOptions对象内指定的格式和目标。
语法:
public virtual void Export(CrystalDecisions.Shared.ExportOptions options);
参数说明:
options:导出报表的格式和目标。
此方法可以接受名为ExportOptions的对象作为变量,描述导出格式类型和目的类型。
ExportOptions对象是CrystalDecisions.Shared命名空间下的一个类,它提供属性,以便检索和设置用于导出报表的选项。
ExportOptions对象常用的属性及说明如表6.5所示。
表6.5 ExportOptions对象常用的属性及说明
属性
|
说明
|
DestinationOptions
|
获取或设置 DestinationOptions
|
ExportDestinationOptions
|
获取或设置报表的导出目标选项
|
ExportDestinationType
|
获取或设置导出目标类型
|
ExportFormatOptions
|
获取或设置 FormatOptions
|
ExportFormatType
|
获取或设置导出格式类型
|
FormatOptions
|
获取或设置 FormatOptions
|
下面对比较重要的属性进行详细介绍。
(1)DestinationOptions属性
获取或设置DestinationOptions。
语法:
public object DestinationOptions{get; set;}
DestinationOptions对象包括DiskFileDestinationOptions、ExchangeFolderDestinationOptions或MicrosoftMailDestinationOptions对象。
l DiskFileDestinationOptions对象
检索和设置导出到磁盘时的文件名。如果将报表导出至一个磁盘文件,使用DiskFileDestinationOptions对象的DiskFileName属性来设置目的文件的完整路径与文件名称。
l ExchangeFolderDestinationOptions对象
检索和设置导出到Microsoft Exchange文件夹时的选项。如果将报表导出至Microsoft Exchange文件夹,应使用ExchangeFolderDestinationOptions对象的下列属性进行相关设置,如表6.6所示。
表6.6 ExchangeFolderDestinationOptions对象常用的属性及说明
属性
|
说明
|
DestinationType
|
获取或设置导出目标类型
|
FolderPath
|
获取或设置Exchange文件夹的路径,该文件夹用于导出到Exchange的报表
|
Password
|
获取或设置Exchange密码
|
Profile
|
获取或设置访问Exchange文件夹的用户配置文件,该文件夹用于导出到Exchange的报表
|
l MicrosoftMailDestinationOptions对象
提供属性,以便检索和设置导出到Microsoft mail时的选项。如果将报表导出至Microsoft mail,应使用MicrosoftMailDestinationOptionss对象的下列属性进行相关设置如表6.7所示。
表6.7 MicrosoftMailDestinationOptions对象常用属性及说明
属性
|
说明
|
MailCCList
|
获取或设置通过电子邮件发送的报表的副本(抄送)列表
|
MailMessage
|
获取或设置包含在通过电子邮件发送的报表中的电子邮件
|
MailSubject
|
获取或设置要通过电子邮件发送的报表的电子邮件主题
|
MailToList
|
获取或设置要通过电子邮件发送的报表的收件人列表
|
Password
|
获取或设置登录电子邮件账户时所需的密码
|
UserName
|
获取或设置登录电子邮件账户时所需的用户名
|