导出报表

普通导出报表

背景说明:

  报表制作完成后,不仅能够实现展现及打印的功能,还能够根据用户的不同需求,以不同的形式导出。润乾报表为用户提供的导出方式有Excel PDFTextXmlWord,方便了用户的使用。

代码示例:

◆ 导出Excel

  IReport ireport = ......;    //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_EXCEL);   //导出为excel

ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_EXCEL_PAGE);  //导出为分页的excel

ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_EXCEL_FORMULA);  //导出为带公式的excel

re.export(ireport );  //导出

◆ 导出Pdf

  IReport iReport = ......;   //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_PDF);  //导出为pdf

ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_PDF_PAGE);  //导出为分页的pdf

re.export(ireport );  //导出

◆ 导出Text

  IReport iReport = ......;   //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_TEXT);  //导出为txt

re.export(ireport );  //导出

◆ 导出xml

  IReport iReport = ......;   //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter.EXPORT_XML);  //导出为xml

re.export(ireport );  //导出

◆ 导出Html

  IReport iReport = ......;   //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_HTML);  //导出为html

re.export(ireport );  //导出

 

◆ 导出Word

  IReport iReport = ......;   //运算代码,获得一个IReport对象

  ReportExporter re = new ReportExporter(java.lang.String fileName,

ReportExporter. EXPORT_WORD_OPENXML);  //导出为word

re.export(ireport );  //导出

 

导出报表到服务器

背景说明:

报表制作完成后,不仅可以导出到本地,还可以导出到服务器中的某个目录下。

页面中展现报表时,会生成一个导出到服务器的js函数,函数名为save2server (reportName, saveClass)[reportName]tag标签中指定的报表name,参数saveClass是用户写的保存类全名,此类要实现接口com.raqsoft.report.usermodel.ISave2Server

用户可在页面中放一个按钮来调用此js函数,或者在taguserFuncBarElements属性中添加按钮到报表的工具条中。

 

示例:

JSP页面:

<report:html name="report1" reportFileName="<%=file%>"

  ……

  modifiable="yes"

  userFuncBarElements="<input type=button value='导出excel到服务器' onclick=save2server ('report1','test.MySave2Server')>"

/>

 

参考文件:SavetoServer.jsp

 

MySave2Server代码:

package api;

 

import java.io.FileOutputStream;

import java.io.PrintWriter;

import javax.servlet.ServletContext;

import javax.servlet.http.HttpServletResponse;

import com.raqsoft.common.Escape;

import com.raqsoft.report.usermodel.Context;

import com.raqsoft.report.usermodel.IReport;

import com.raqsoft.report.usermodel.ISave2Server;

import com.raqsoft.report.util.ReportUtils;

import com.raqsoft.report.view.ReportServlet;

public class MySave2Server implements ISave2Server {

  public void save(IReport report, String fileName, ServletContext application, HttpServletResponse response ) throws Throwable {

    ... ...

    fileName = application.getRealPath( "/export/" + fileName + ".xls" );

    FileOutputStream fos = null;

    try {

      fos = new FileOutputStream( fileName );

      ReportUtils.exportToExcel (fos, report, true);

    }

    finally {

      ... ...

    }

    ... ...

  }

}

 

参考文件:MySave2Server.java