1. 描述编辑
保存模板至数据库 这篇文档中我们已经将 cpt 模板保存入库了,当需要访问报表的时候,我们便可以从数据库中根据报表名称取出报表,不需要再保存为 cpt 模板,可以直接转为网络报表,在 Web 浏览器中进行访问。例如在浏览器中输入:
http://localhost:8075/webroot/decision/view/report?viewlet=com.fr.demo.ReadFromDatabase&cptname=GettingStarted.cpt,就可以读出保存到数据库中的模板了。
若修改参数 cptname 的值,就可以查看数据库中不同的报表。
注:该方法不适用于 frm 决策报表的读取。读取 frm 跟 cpt 有所不同,下面将分开介绍。
2. 读取 cpt 报表编辑
2.1 新建读取报表类
新建类 ReadFromDatabase,继承 com.fr.web.Reportlet 抽象类,并实现 public Report createReport(ReportletRequest reportletRequest) 方法。完整代码见链接:ReadFromDatabase.java
2.2 编译生成类文件
在 Java 开发平台中会自动编译,在此不再详述。
将编译后的 ReadFromDatabase.class 类放至应用目录%FR_HOME%/webapps/webroot/WEB-INF/classes/com/fr/demo/下。
2.3 发布并访问
编译源文件,启动报表服务器,输入地址:http://localhost:8075/webroot/decision/view/report?viewlet=com.fr.demo.ReadFromDatabase&cptname=GettingStarted.cpt,就可以看到报表结果了,如下图所示:
3. 读取 frm 报表编辑
3.1 新建读取报表类
新建类 ReadFromDatabase,完整代码见链接:ReadfrmFromDatabase.java
3.2 编译生成类文件
将编译后的 ReadfrmFromDatabase.class 类放至应用目录 %FR_HOME%/webapps/webroot/WEB-INF/classes/com/fr/demo/ 下
3.3 发布并访问
启动报表服务器,输入地址 http://localhost:8075/webroot/decision/view/form?viewlet=com.fr.demo.ReadfrmFromDatabase&reportname=Form5.frm,就可以看到报表结果了,如下图所示: