历史版本10 :程序网络报表 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 程序网络报表概念编辑

FineReport 设计器基本可以零编码地设计出绝大多数报表,然而需求是千变万化的,也许某些个性化的功能通过设计器无法实现,此时就如上一节中介绍的,可以将模板读入程序中,进行修改后再导出,再在浏览器中访问报表。显然这样做比较繁琐,对于这种情况,您可以直接将读取的模板保存为程序网络报表,直接在 Web 端访问定义的程序网络报表。

下面我们做个简单的程序调用报表,实现读取 Parameter.cpt,然后在浏览器中直接访问该网络报表。


2. 实现步骤编辑

2.1 定义程序网络报表

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

具体代码如下所示:

https://git.fanruan.com/demo/example/src/release/10.0/src/main/java/com/fr/demo/SimpleReportletDemo.java


2.2 编译生成类文件

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


2.3 发布并 Web 预览

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

222