快逸报表实现将多个报表导入一个excel的多个sheet

一:实现思路

先读取多个报表,分别计算多个报表,然后把多个结果添加到导出列表,最后实现导出到excel的多个sheet中。

二:实现步骤(以两个报表为例)

1:首先制作两个报表one.raqtwo.raq,如下图:

One.raq

Two.raq


 

2:利用快逸提供的方法读入两个报表,读入计算并导出,代码如下:

<%@page contentType=”text/html;charset=GBK” %>

<%@taglib uri=”/WEB-INF/runqianReport4.tld” prefix=”report” %>

<%@page import=”com.runqian.report4.model.ReportDefine”%>

<%@page import=”com.runqian.report4.model.engine.ExtCellSet”%>

<%@page import=”com.runqian.report4.usermodel.Context”%>

<%@page import=”com.runqian.report4.usermodel.Engine”%>

<%@page import=”com.runqian.report4.usermodel.IReport”%>

<%@page import=”com.runqian.report4.util.ReportUtils”%>

<%@page import=”com.runqian.report4.usermodel.PageBuilder”%>

<%@page import=”com.runqian.report4.view.excel.ExcelReport”%>

<html>

<bodytopmargin=0 leftmargin=0 rightmargin=0 bottomMargin=0>

<%

//创建context对象,设置报表的路径

Contextctx = new Context();

Stringpath = “D:/Program Files/reportHome/webapps/demo/reportFiles/one.raq”;

//读入报表

ReportDefinerd = (ReportDefine) ReportUtils.read(path);

Engineengine = new Engine(rd, ctx);

//计算报表

IReportreport = engine.calc();

Contextctx1 = new Context();

Stringpath1 = “D:/Program Files/reportHome/webapps/demo/reportFiles/two.raq”;

ReportDefinerd1 = (ReportDefine) ReportUtils.read(path1);

Engineengine1 = new Engine(rd1, ctx1);

IReportreport1 = engine1.calc();

ExcelReport er = new ExcelReport();

//导出的excel文件命名为moreSheetInExcel.xls,包括两个sheet,一个为one,另一个为two,保存在D盘下

er.export(”one”, report);

er.export(”two”, report1);

er.saveTo(”D:/moreSheetInExcel.xls”); //输出到指定文件

out.print(”导出成功!”);

%>

</body>

</html>

三:运行此jsp,执行其中的代码

当页面中出现导出成功时,就说明两个报表已经成功导入到了moreSheetInExcel.xsl,并分别存储在one sheettwosheet中,效果如下:

四:总结

此示例只是简单实现这一需求,具体项目中可以统一写一个方法类,动态传入要导出的报表名字,并且动态设置保存路径。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值