普通导出报表
背景说明:
报表制作完成后,不仅能够实现展现及打印的功能,还能够根据用户的不同需求,以不同的形式导出。润乾报表为用户提供的导出方式有Excel, PDF,Text,Xml,Word,方便了用户的使用。
代码示例:
◆ 导出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函数,或者在tag的userFuncBarElements属性中添加按钮到报表的工具条中。
示例:
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