`
lc90
  • 浏览: 68193 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

快逸数据回填的实现方法

阅读更多
导出excel时,可以选择导出的excel是否分页,如果分页,报表就会被分成若干个sheet来保存,这些sheet会自动命名成为sheet1,sheet2…,但是有些时候这样的命名不能满足用户的需求,用户需要从每个sheet名字中看出相应的信息,如订单明细1,本文就来介绍一下如何设置sheet名字。

下面就说一下用标签发布报表和用API发布报表设置sheet名字的方法。

一.用标签发布报表时设置sheet名字的方法:

用快逸提供的标签发布报表时,给标签”saveAsName”设置一个属性值就可以了,sheet的名字就用”saveAsName”的值命名,如果报表分页了,则系统会自动在sheetName后面加上1、2、3。如下标签。

<report:html name=”report1″
reportFileName=”<%=report%>”
needPageMark=”yes”
needSaveAsExcel=”yes”
saveAsName=” 订单明细” //报表另存为Excel、PDF或离线填报时
//的文件名(不用带扩展名),默认值与报表同名
/>

保存的excel效果如下



二.用API发布报表设置sheet名字的方法

本示例导出Excel的JSP如下:

<%@ page contentType=”text/html;charset=GBK” %>
<jsp:directive.page import=”com.runqian.report4.usermodel.Context”/>
<jsp:directive.page import=”java.io.File”/>
<jsp:directive.page import=”com.runqian.report4.util.ReportUtils”/>
<jsp:directive.page import=”com.runqian.report4.usermodel.*”/>
<jsp:directive.page import=”com.runqian.report4.view.excel.ExcelReport”/>
<jsp:directive.page import=”com.runqian.report4.model.ReportDefine”/>
<%@ taglib uri=”/WEB-INF/runqianReport4.tld” prefix=”report” %>
<html>
<body topmargin=0 leftmargin=0 rightmargin=0 bottomMargin=0>
<%
String reportFileHome=Context.getInitCtx().getMainDir();
String raqName = request.getParameter(”raq”);
String path = application.getRealPath(reportFileHome+ File.separator +raqName);
Context cxt = new Context(); //构建报表引擎计算环境
ReportDefine rd = (ReportDefine)ReportUtils.read(path);//读取报表
Engine engine = new Engine(rd, cxt); //构造报表引擎
IReport iReport = engine.calc(); //运算报表
//定义导出excel的report对象
ExcelReport excelReport = new ExcelReport();
//输出不分页的报表对象,第一个参数为sheet的名字
excelReport.export(”订单明细”,iReport);
//生成excel文件,保存在d盘
excelReport.saveTo(”d:\\订单明细.xls”);
%>
</body>
</html>

上面是设置不分页报表的方法,如果报表分页,要用下面的方法为excel中的sheet命名

PageBuilder pageBuilder = new PageBuilder(iReport);//定义一个分页报表的对象

er.export(sheetName, pageBuilder); //自定义sheet名称输出PageBuilder,如PageBuilder有多页,则系统会自动在sheetName后面加上1、2、3

如果以后遇到类似情况,就可以按照上面的方法实现了。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics