报表的实现以及用户组资源注册
报表的实现以及用户组资源注册
报表实现
1.1 帆软
报表是以表格、图表的形式来动态展示数据,企业通过报表进行数据分析,进而用于辅助经营管理决策。
FineReport 是一款用于报表制作,分析和展示的工具,用户通过使用 FineReport 可以轻松的构建出灵活的数据分析和报表系统,大大缩短项目周期,减少实施成本,最终解决企业信息孤岛的问题,使数据真正产生其应用价值。
1.2报表制作
- 制作过程与excel表相似
- 格式方面多使用格式刷
- 跟数据库连接,通过sql语句添加数据集
- 具体语法教程需要在帆软说明文档内学习
数据库ds1
WITH T1 AS( SELECT COUNT(*) AS NUM, ID1, TYPE_CB, TYPE_CX, TYPE_JL, SUBSTR(YMD,5,2) AS YF FROM LGSCSU.WH_SC_JL0001 WHERE ATTITUDE='同意' AND STATUS ='已审核' AND TYPE_JL IN ('月最好记录','日最 好记录') --AND SUBSTR(YMD,1,4)='2023' ${if(len(ymd)=0,"","and SUBSTR(YMD,1,4)='"+ymd+"'")} GROUP BY ID1,TYPE_CB,TYPE_CX,TYPE_JL,SUBSTR(YMD,5,2) ) SELECT C.ID1, C.TYPE_CB, C.TYPE_CX, A.TYPE_JL, A.YF, A.NUM FROM LGSCSU.SA_SC_JL0001_STRUCT C LEFT JOIN T1 A ON A.ID1=C.ID1 ORDER BY C.ID1
PS: with ... as ...子查询 https://www.cnblogs.com/Niko12230/p/5945133.html
listagg(...) within group(...) 行转列(将多行转为一行)
substr(YMD,1,4)='2023' 截取字符(从第一位开始截取共4位)
数据库ds2
--SELECT --C.ID1, --C.TYPE_CB, --C.TYPE_CX, --A.TYPE_JL, --A.YMD, --SUBSTR(A.YMD,5,2) AS YF --FROM LGSCSU.SA_SC_JL0001_STRUCT C --LEFT JOIN LGSCSU.WH_SC_JL0001 A --ON A.ID1=C.ID1 --WHERE A.ATTITUDE='同意' AND A.STATUS ='已审核' AND A.TYPE_JL IN ('月最好记录','日最好记录') AND SUBSTR(A.YMD,1,4)='2023' --ORDER BY A.BIG_WT DESC SELECT count(*) as num, C.ID1, C.TYPE_CB, C.TYPE_CX, A.TYPE_JL, LISTAGG (A.YMD,' ') WITHIN GROUP (ORDER BY A.YMD) AS YMD FROM LGSCSU.SA_SC_JL0001_STRUCT C LEFT JOIN LGSCSU.WH_SC_JL0001 A ON A.ID1=C.ID1 WHERE A.ATTITUDE='同意' AND A.STATUS ='已审核' AND A.TYPE_JL IN ('月最好记录','日最好记录') --AND SUBSTR(A.YMD,1,4)='2023' ${if(len(ymd)=0,"","and SUBSTR(YMD,1,4)='"+ymd+"'")} GROUP BY C.ID1,C.TYPE_CB,C.TYPE_CX,A.TYPE_JL ORDER BY ID1
1.3内置数据集
内置数据集,是指新建一个类似数据库表的原表,可作为模板的数据源来设计报表。
行列信息手动输入
1.4报表注册
- 使用FileZilla连接数据库后,将命名好的.cpt文件上传至服务器(对应目录)
- 菜单信息管理(在对应节点树下生成页面)
- 页面信息管理(平台托管模式,使得用户只能从平台进入)
- 报表管理(通过系统选择可以查询到对应的报表组)
使用复制行记录进行修改关键的配置信息
用户组资源注册
- 通过系统平台-->安全管理-->群组成员信息管理,查看群组用户信息
- 授权管理-->用户组视角授权-->选择相关授权信息管理查询可查看页面对应资源组-->通过添加授权即可使相关群组浏览报表