Application Development

Software technique, Skills & Applications

报表输出到.pdf,或 .doc,或 .xsl 文件中 December 4, 2007

Filed under: Crystal Report — meetme @ 5:35 am

Crystal   Report   引擎使您能够通过多种方式传递报表。使用导出选项,可将报表发送到磁盘文件、“交换”文件夹或   MS   Mail   (MAPI)。该报表可导出为以下格式:Excel、Crystal   Reports、Microsoft   Word、HTML、Portable   Document   Format   (PDF)   或   Rich   Text   (RTF)。  
   
  用户的导出选项有三种设置方法:    
   
  保留   CrystalReportViewer   工具栏上的默认“导出专家”按钮。    
  创建自己的按钮,该按钮调用“导出专家”对话框。此方法使您能够在不需要标准工具栏的其他功能或需要自定义该界面时隐藏标准工具栏。这只适用于   Windows   窗体查看器。    
  编写代码以指定特定的导出类型和目的地。    
  用“导出”按钮导出报表  
  “导出”按钮位于   Crystal   Report   Viewer   工具栏的左上角。用户单击“导出”按钮时,出现一对话框,提示用户选择导出格式。  
   
  “导出”按钮会自动出现,除非您禁用查看器工具栏(在这种情况下,可提示用户选择导出选项,也可使用代码通过特定选项进行导出)。    
   
  提示用户选择导出选项  
  如果仅需要   CrystalReportViewer   工具栏中的“导出”按钮,则可禁用该工具栏,创建自己的“导出”按钮。该功能只适用于   Windows   窗体查看器。  
   
  创建自定义“导出专家”按钮  
  向窗体添加“按钮”控件。    
  双击“按钮”控件以指定   Click   事件的代码。根据所用语言在相应源文件中插入适当的代码(选自下列示例)。  
  [Visual   Basic]    
  crystalReportViewer1.ExportReport   ()  
  [C#]    
  crystalReportViewer1.ExportReport   ();  
  [C++]    
  crystalReportViewer1->ExportReport   ();  
  当用户单击该按钮时,“导出”对话框将提示用户从   Crystal   Reports   for   Visual   Studio   .NET   提供的各种导出格式选项中选择其中之一。    
   
  通过代码设置导出选项  
  可通过在代码中设置导出目的地、格式和文件名来设置报表导出选项。  
   
  注意       DestinationType、FormatType   或   DiskFileName   没有默认值;因此,必须为这三个字段指定值。这可通过报表引擎实现。  
  以下是将报表按   Microsoft   Excel   8.0   格式导出到磁盘的示例。  
   
  要设置导出选项,请执行下列操作:    
   
  向窗体添加“按钮”控件。    
  为“按钮”的“文本”属性键入“导出到   MS   Excel   文件”。    
  双击“按钮”控件以指定   Click   事件的代码。根据所用语言在相应源文件中插入适当的代码(选自下列示例)。  
  [Visual   Basic]    
  ‘   声明变量并获取导出选项。  
  Dim   exportOpts   As   New   ExportOptions()  
  Dim   diskOpts   As   New   DiskFileDestinationOptions()  
  Dim   excelFormatOpts   As   New   ExcelFormatOptions()  
  exportOpts   =   Report.ExportOptions  
   
  ‘   设置   Excel   格式选项。  
  excelFormatOpts.ExcelTabHasColumnHeadings   =   true  
   
  exportOpts.ExportFormatType   =   ExportFormatType.Excel  
  exportOpts.FormatOptions   =   excelFormatOpts  
   
  ‘   设置导出格式。  
  exportOpts.ExportFormatType   =   ExportFormatType.Excel  
   
  exportOpts.ExportDestinationType   =   ExportDestinationType.DiskFile  
   
  ‘   设置磁盘文件选项。  
  diskOpts.DiskFileName   =   fileName  
  exportOpts.DestinationOptions   =   diskOpts  
   
  Report.Export()  
  [C#]    
  //   声明变量并获取导出选项。  
  ExportOptions   exportOpts   =   new   ExportOptions();  
  ExcelFormatOptions   excelFormatOpts   =   new   ExcelFormatOptions   ();  
  DiskFileDestinationOptions   diskOpts   =   new   DiskFileDestinationOptions();  
  exportOpts   =   Report.ExportOptions;  
   
  //   设置   Excel   格式选项。  
  excelFormatOpts.ExcelUseConstantColumnWidth   =   true;  
  exportOpts.ExportFormatType   =   ExportFormatType.Excel;  
  exportOpts.FormatOptions   =   excelFormatOpts;  
   
  //   设置磁盘文件选项并导出。  
  exportOpts.ExportDestinationType   =   ExportDestinationType.DiskFile;  
  diskOpts.DiskFileName   =   fileName;  
  exportOpts.DestinationOptions   =   diskOpts;  
   
  Report.Export   ();