FineReport 集成
FineReport 集成笔录(一)
之 初体验
目的:将finereport报表集成到现有web系统
使用版本 :finereport8.0
环境:Tomcat7.0/jdk1.7
本次考虑因素:1. 查询条件使用web系统本身的查询页面
2. 如何控制不登陆系统不能访问报表(Web系统本身实现) 3. 如何控制查询,打印权限
1. 下载finereport8.0并安装
2. 用finereport8设计器设计一个新报表 a. 打开设计器,输入激活码(点击获取信息码在官网输入相应信息获取激活码)
27258
b. 新建一个自己系统相关的数据源
27259
c. 文件-- 新建工作簿,新建数据集
27261
d. 添加展示内容,并保存(WorkBook1.cpt)
27263
3. 将finereport集成至web系统
a. 在web.xml里添加添加代码:
ReportServer
com.fr.web.ReportServlet
0
ReportServer
/ReportServer
b. 复制lib文件(最开始只添加基础的文件,后面遇到缺少什么则加什么):
将fr-core-8.0.jarfr-report-8.0.jar fr-third-8.0.jar三个包加入到Web系统里,如果使用数据决策系统则加入fr-platform-8.0.jar,在web系统web-inf文件夹下建 resources文件夹,新建datasource.xml,添加相应数据源,如果不知道如何添加,则可以找到finereport设计器的resources目录(D:\FineReport_8.0\WebReport\ WEB-INF \resources),将里面的datasource.xml复制到Web的resources里,然后删除多余的数据源,只保留自己系统的数据源:
c. 在web系统web-inf文件夹下建reportlets文件夹,将刚才做的一个测试cpt复制到里面
4. Web系统里添加相应功能实现 a. 建立查询条件页面 27267
b. 查询页面提交后跳转到showReport.jsp页面 showReport.jsp
<%
String path =request.getContextPath();
String basePath =request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
">
My JSP 'showReport.jsp' starting page
/ReportServer?reportlet=WorkBook1.cpt">
5. 至此初步的集成已完成,下面是查询结果: 27268
{:5_138:},留给自己备忘及有需要的朋友,记录执续进行