Java软件报表软件技术博客

java报表软件技术汇总 java报表软件制作 报表软件新闻
posts - 355, comments - 100, trackbacks - 0, articles - 3
   :: 首页 :: 新随笔 ::  :: 聚合  :: 管理

一、应用背景

计算机的应用已经渗透到日常工作的许多方面,无论是其自身还是所发挥的作用,计算机都标志着一种高科技,使工作高效率和高水平。为了能更方便,更轻松,更好的管理,信息化建设正在日益发展壮大,更加完善。200711月,财政部党组明确提出了一体化建设指导思想,要求做到管理一体化、业务一体化和技术一体化。近两年来,始终坚持贯彻落实一体化建设指导思想,不断加快建设步伐,信息化建设正逐步由分散走向统一,取得明显进展。

二、工具

资金监管系统采用PHP网站架构,iframe方式嵌入了,使用FinReport6.5.3版本报表软件,连接相关业务系统ORACLE数据库,制作出图形分析和报表分析,最终通过appserv访问资金监管系统。

三、数据源

资金监管系统来源数据来于相关多个业务系统ORACLE数据库。

(一)总体发放分析
FFDW
表,是发放单位表,字段分为,单位代码和单位名称。


FFLX表,是发放类型表,字段分为,发放类型代码、发放类型名称、单位代码、备注。


FFXM表,是发放项目表,字段为,发放项目代码、发放项目名称、发放类型、发放单位代码、预警金额、备注、项目备注。


HM_AREA表,是单位表,字段分为,区域代码和区域名称。


HM_DATA表,是发生数据表,字段分为,ID号、部门代码、发放项目代码、身份证号、姓名、区域代码、账号、金额、日期、备注、发放日期。


RYXX表,是人员信息表,字段分为,身份证号、姓名、性别、联系地址、联系电话、状态、日期、单位代码。

(二)账务分析
Sjzw_dw
表,是财务单位表,字段分为单位代码和单位名称。


Sjzw_dwkm表,是单位科目表,字段分为单位代码,科目代码,科目名称。



Sjzw_pz表,是凭证表,字段分为单位代码、凭证ID、凭证日期、凭证号、凭证类型、用途、科目代码、借方金额、贷方金额、审核员、财务主管、制单员、记账员,记账日期。 


四、需求分析
对全区资金进行资金监管,包括区、镇、街道财政和行政事业单位的所有资金收入和支出过程,银行账户资金变动状况进行实时监督、管理、分析,并通过各类图表等方式实时展示反映、预警控制和实时互动交流分析管理。

.         各类报表可以自由组合并预测

每张报表在特定的条件下可以由指定用户自由组合、定义组成相关的报表,并有多种查询方式,同时需要有预测分析功能。

.         各类报表需要有预警功能

.         每张报表都需要有预警功能,而预警值可以由用户自行定义,在预警范围内有数据为正常情况而无需做任何动作时,可以以打标记的方式让这条数据不出现在预警中。

.         各类报表的灵活性

.         每张报表的图形分析要直观明了,联动性强,数据报表需要逐层挖掘至最底层明细数据。报表的操作灵活性要强,需要可以如EXCEL一样可以随意指定对齐方式、文本数字格式、多列排序,便于所有业务管理人员操作。

(一)资金总体发放分析
资金总体发放图形分析分三块统计图,第一部分为部门发放比例,点击部委传参联动第二部分部门发放类型比例,点击发放类型传参联动第三部分部门发放类型的趋势。
资金总体发放报表分析也分为三块,第一部分是发放汇总总表,以交叉报表形式展现,横向为部门,纵向为区域,金额以部门和区域交叉显示。横向纵向每个金额都可以点击,传不同条件展现出不同数据报表。第二部分是定位查询,输入框输入信息点击查询,得到关于当前输入框内信息的报表。第三部分为预警分析报表,每张报表设置好预警值,可以查看预警信息。
(二)账务分析(资产负债表)
资产一般是按各种资产变化先后顺序逐一列在表的左方,反映单位所有的各项财产、物资、债权和权利;所有的负债和所有者权益则逐一列在表的右方。负债一般列于右上方分别反映各种长期和短期负债的项目,业主权益列在右下方,反映业主的资本和盈余。左右两方的数额相等。资产负债表在制作过程中分为2类:第一类为有规则资产负债表,取数据全部取每一个一级科目的金额,一个一个科目单列在资产负债表上;第二类为无规律资产负债表,取数据全部取每一个一级科目的金额,单个科目或多个科目相加列在资产负债表上。

五、数据分析
(一)资金总体发放分析
资金总体发放分析的内容:资金发放分析、资金发放对比分析、资金发放预警分析。
资金总体发放分析的目的:揭示单位发放每个发放类型的内涵、了解单位发放资金变动情况及变动原因、调整发放异常数据、为下一年预算做调整。
(二)账务分析(资产负债表)
资产负债表分析的内容:资产负债表水平分析、资产负债表垂直分析、资产负债表项目分析。
资产负债表分析的目的:揭示资产负债表及相关项目的内涵、了解单位财务状况的变动情况及变动原因、评价单位会计对单位收支状况的反映程度、评价单位的会计政策、修正资产负债表的数据。

六、报表制作
传统的图形分析及报表制作方法
难点1、图形界面中无法制作中文字定位查询,输入中文字系统不识别。
难点2、图形界面中表格无法自定义合并单元格居左、居中、居右。
难点3、图形界面中统计图分析模块单独最大化,数据多时,数据紧凑无法看清楚数据。
难点4、报表中无法行列冻结显示,数据横向和纵向数据多时,向下向上无法知道当前单元格字段意思。
难点5、报表中定位查询无法在整张报表中定位查询,只能查询定位到当前页报表数据。
难点6、报表中无法屏蔽无意义数据,报表数据为零的条目屏蔽显示难;
难点7、报表中无法在线打印,只能导出EXCL再打印。
难点8、报表中数据无法自动刷新,每次只能人工手动刷新数据。
难点9、通过SQL语句查询出数据,无法再报表内自定义取数和排列,无法制作无规则报表(自定义报表)。
利用FineReport报表工具
1
、新建一个报表模板,模板内新建一个参数,在参数设计中,按钮控件事件中添加定位查询后报表超链接代码

连接FineReport报表JS脚本中添加代码:
var XM = this.options.form.getWidgetByName("XM").getValue();
window.open("/WorkSpace1/ReportServer?reportlet=[60e0][6c11]/[5d07][660e][53bf][60e0][6c11][8d44][91d1][603b][4f53][53d1][653e][5206][6790][ff08][4e2a][4eba][67e5][8be2][62a5][8868][ff09].cpt&xm="+FR.cjkEncode(XM));


如果连接第三方报表JS脚本可以修改编码转换方式。 



2
、表格每一列可以任意合并单元格,居左、居中、居右,还可以调整不同格式。

3
、图形分析界面模板中,每个模块都用网页框控件嵌入,如第一部分图形分析制作2份,一份嵌入在网页框控件中,另一份放大版通过超链接写在最大化图片上面。

4
、报表冻结设置,文件页面设置其他中输入重复标题起始行和重复标题结束行,再冻结重复标题结束行打钩。


5
FineReport报表查询过滤,针对当前报表所有数据进行查询过滤,不存在无法查询过滤翻页数据。
6
、报表中屏蔽无意义数据,在需要屏蔽无意义数据关键单元格中,右击条件属性,添加条件属性,增加行高属性,高度为0,输入屏蔽无意义数据条件。



7
FineReport报表含多种打印方式,其中FLASH打印模式操作最为方便简洁。


8
FineReport报表每次打开都是最新数据,打开FR报表时,实时刷新当前报表中数据集中的SQL语句,得到最新数据。
9
、制作无规律资产负债表,资产负债表分2类数据资产类和负债类,新建2个数据集,一个为资产类科目借方减去贷的数据,另一个为负债科目贷方减去借方的数据。
数据集中唯一值取数用公式replace(UNIQUEARRAY(数据集名称select(字段名)),",","")如:月份、单位名称、单位负责人、财务主管、制单人、审核员都可以用此公式取数据。
资产负债表取无规律值通过用公式=MAP(符合条件的值, "数据集名称", "符合条件的列数","取值的列数")如:取科目应收在院病人医药费的年初数,公式输入=MAP(111, "科目1-5", "1", "3"),公式表示取数据集科目1-5”中第一列值等于111对应的第三列的值。多个科目合计数可以使用公式=MAP(符合条件的值, "数据集名称","符合条件的列数", "取值的列数")+MAP(符合条件的值, "数据集名称","符合条件的列数", "取值的列数"),如:去科目货币资金的年初数,输入公式=MAP(101, "科目1-5","1", "3")+MAP(102, "科目1-5","1", "3")+MAP(109, "科目1-5","1", "3"),公式表示取数据集科目1-5”第一列值等于101102109对应的第三列的值的合计数。

10
、在报表页面设置,其他中报表设置居中对齐,设置冻结重复行,目前版本设置冻结后报表分页预览无法居中显示,通过在报表WEB属性中添加JS代码弥补此问题使用以下方法,但还存在缺陷,WEB预览报表时看不到上下滚动条和在数据量多网速慢的情况下,系统先刷新了数据在最大化,无法完成居中效果。



在报表WEB属性,分页预览报表中使用默认工具栏,添加起始加载JS脚本中输入
setTimeout(‘top.moveTo(0,0)’,5);
setTimeout(‘top.resizeTo(screen.availWidth,screen.availHeight)’,5);
此脚本打开报表起最大化作用; 
再添加加载结束JS脚本中输入 
varslmargin=($(‘.content-container’).width()-$(‘.pageContentDIVdiv:first-child’).width())/2
if (slmargin>0) $(‘.content-container’).css(‘margin-left’,slmargin);
此脚本弥补报表冻结后无法居中的缺陷。


七、成果展示
(一)资金总体发放图形分析

资金总体发放分析点击点击查看明细表得到资金发放汇总表,数据以部门横向扩展显示,以区域纵向扩展显示以交叉表形势汇总数据,横向纵向交叉金额数据可以点击,传相关条件可以得到更明细数据。

资金发放汇总表点击部门汇总合计金额,得到部门资金发放汇总表,数据以资金发放类型横向扩展显示,以区域纵向扩展显示以交叉表形势汇总数据,横向纵向交叉金额数据可以点击,传相关条件可以得到更明细数据。

部门资金发放汇总表点击资金发放类型汇总合计金额,得到资金发放类型资金发放明细表,数据以月份横向扩展显示,区域、姓名、身份证、地址以列表纵向扩展显示以交叉表形势汇总数据。区域以分组显示,能方便查看某区域有多少人信息,报表添加了统计行数功能,能明确数量的多与少。

资金总体发放分析点击“10天内到期得到符合当前报表条件报表。

资金总体发放分析点击金额大于10得到符合当前报表条件报表。

资金总体发放分析点击金额大于等于1万小于10得到符合当前报表条件报表。

资金总体发放分析点击享受两项以上惠民政策得到符合当前报表条件报表。


点击身份证,得到此身份证的详细明细发放数据。



(二)账务分析(资产负债表)
有规则资产负债表,同一张报表传不同单位,默认当前月日期显示数据。
有规则资产负债表单位1

有规则资产负债表单位2

无规则资产负债表(自定义报表),默认当前月日期显示数据。

 




只有注册用户登录后才能发表评论。


网站导航: