历史版本18 :从数据库读取报表 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 描述编辑
上一节 中我们已经将 cpt 模板保存入库了,当需要访问报表的时候,我们便可以从数据库中根据报表名称取出报表,不需要再保存为 cpt 模板,可以直接转为网络报表,在 Web 浏览器中进行访问。例如在浏览器中输入:
http://localhost:8075/webroot/decision/view/report?viewlet=com.fr.demo.ReadFromDatabase&cptname=GettingStarted.cpt,就可以读出上一节中保存的模板了。
若您修改参数 cptname 的值,就可以查看数据库中不同的报表。
注:frm 模板保存入库方式与 cpt 一样,但要注意 frm 模板大小,模板内存过大会有无法入库的情况发生。
2. 实现步骤编辑
2.1 编写读取模板程序
新建类 ReadFromDatabase,继承 com.fr.web.Reportlet 抽象类,并实现 public Report createReport(ReportletRequest reportletRequest) 方法。完整代码如下所示:
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,就可以看到报表结果了,如下图所示: