创建并初始化导出控件

导出控件全面处理报表的导出。它使您可以在浏览器窗口中预览导出的报表,或将报表作为附件导出,并通过显示一个下载对话框来提示用户。导出控件由 ReportExportControl 类表示。

创建导出控件
  1. 引用所需的 Java 类和包。

    <%@ page import="com.crystaldecisions.report.web.viewer.ReportExportControl" %>

    <%@ page import="com.crystaldecisions.reports.reportengineinterface.JPEReportSourceFactory" %>

    <%@ page import="com.crystaldecisions.sdk.occa.report.reportsource.IReportSourceFactory2" %>

    <%@ page import="com.crystaldecisions.sdk.occa.report.exportoptions.ExportOptions" %>

    <%@ page import="com.crystaldecisions.sdk.occa.report.exportoptions.ReportExportFormat" %>

    <%@ page import="com.crystaldecisions.sdk.occa.report.exportoptions.RTFWordExportFormatOptions" %>



  2. 创建一个 ReportExportControl 对象。

    ReportExportControl exportControl = new ReportExportControl();



一旦创建了 ReportExportControl 对象,就必须指定想要的导出格式。对于本例而言,选择了 RTF 作为导出格式。有关导出格式的完整列表,请参阅导出格式

指定导出格式
  1. 创建一个 ExportOptions 对象。

    ExportOptions exportOptions = new ExportOptions();



  2. 调用 setExportFormatType 方法,将代表所需格式的 ReportExportFormat 常量传给它,以指定导出格式。

    exportOptions.setExportFormatType(ReportExportFormat.RTF);



    注意:    有关指定导出格式的有效常量的列表,可以在《Crystal Reports for Rational Application Developer Java API 参考》中的 ReportExportFormat 类文档中找到。

某些格式包含附加的选项,可以通过配置这些选项来自定义如何导出报表。例如,可以控制为某些格式导出的页面范围。

配置特定于格式的选项
  1. 创建适当的格式选项对象。

    在本例中,创建一个 RTFWordExportFormatOptions 对象,这是因为导出格式为 RTF。

    RTFWordExportFormatOptions RTFExpOpts = new RTFWordExportFormatOptions();



  2. 配置想设置的选项。

    在本例中,配置导出选项以便只导出第 1 至第 3 页。

    RTFExpOpts.setStartPageNumber(1);

        RTFExpOpts.setEndPageNumber(3);



  3. 调用 ReportExportOptions 对象的 setFormatOptions 方法,将格式选项对象传给它。

    exportOptions.setFormatOptions(RTFExpOpts);    



初始化导出控件
  1. 调用此控件的 setReportSource 方法并将对已创建的报表源对象的引用传给该方法,以设置此控件的报表源。

    exportControl.setReportSource(reportSource);



  2. 调用 setExportOptions 方法,将您较早前创建的 ExportOptions 对象传给它。

    exportControl.setExportOptions(exportOptions);



  3. 您可能也想调用 setExportAsAttachment 方法。

    将此方法设置为 true 会显示一个对话框,该对话框允许您的 Web 应用程序的用户在打开导出的报表前保存它。否则,如果浏览器支持对导出的文件类型进行打开,则导出的报表会直接显示在浏览器窗口中。

    exportControl.setExportAsAttachment(true);




Business Objects
http://www.china.businessobjects.com

支持服务
http://www.china.businessobjects.com