趣百科

报表打印教程之FineReport工具: 设置网络报表

编辑:Simone 2024-10-21 11:40:15 542 阅读

报表打印教程之FineReport工具: 设置网络报表

需求是千变万化的,即使设计器基本可以零编码地设计出绝大多数报表,但也有某些个性化的功能通过设计器无法实现。对于将模板读入程序中,进行修改后再导出, 再在浏览器中访问报表,显然这样做比较繁琐,对于这种情况该如何解决呢。

下面就通过报表打印FineReport工具来进行介绍。

定义程序网络报表

程序网络报表所在类需要继承com.fr.web.reportlet这个抽象类,并且需要实现createReport(ReportletRequest arg0)这个方法,并返回报表对象。

具体代码如下:

//程序网络报表package com.fr.demo; import java.util.Map;import com.fr.base.Env;import com.fr.base.FRContext; import com.fr.main.TemplateWorkBook; import com.fr.web.core.Reportlet;import com.fr.web.request.ReportletRequest;import com.fr.io.TemplateWorkBookIO; public class SimpleReportletDemo extends Reportlet { public TemplateWorkBook createReport(ReportletRequest reportletrequest) { // 新建一个WorkBook对象,用于保存最终返回的报表 Env oldEnv = FRContext.getCurrentEnv(); TemplateWorkBook WorkBook = null; try { // 读取模板,将模板保存为workbook对象并返回 WorkBook = TemplateWorkBookIO.readTemplateWorkBook(oldEnv, "\\doc\\Primary\\Parameter\\Parameter.cpt"); } catch (Exception e) { e.getStackTrace(); } return WorkBook; } @Override public void setParameterMap(Map arg0) { // TODO Auto-generated method stub } @Override public void setTplPath(String arg0) { // TODO Auto-generated method stub } }

编译生成类文件

在java开发平台中会自动编译,在此不再详述。

将编译后的SimpleReportletDemo.class放到网络报表根目录下,由于该类在包com.fr.demo中,因此存放在WEB- INF\classes\com\fr\demo下,保存后启动服务器,如内置服务器,在浏览器中输入下地 址:http://localhost:8075/WebReport /ReportServer?reportlet=com.fr.demo.SimpleReportletDemo,便可以看到效果。

版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/life/25372.html

相关推荐