Posted on 2012-09-03 17:50
思达商智 阅读(1800)
评论(0) 编辑 收藏 所属分类:
Java报表设计
报表软件数据填报从广义上讲实际上涵盖了数据从收集到进入数据库这样一个广泛的范围,涵盖了填报模板制作、分发、收集、填报、导入、校验、审核、发布、权限控制等一系列功能。狭义的数据填报只包含数据在线填报功能,指用户在线填写一定的数据,然后点击提交将数据录入数据库。
鉴于目前数据填报软件的功能范围,本文将讨论广义的数据填报。
在填报人员进行数据填报之前,一般应由IT人员或者业务人员针对填报需求进行填报模板的制作,根据将来填报模式的不同,应该制作符合不同填报方式的模板。在填报模板的制作过程中,用户将设计填报页面(在线)或表格(离线)的样式,数据项目的名称、数据项目之间的逻辑关系、数据校验的逻辑以及数据库维护的代码。这部分工作将在基于Java的图形用户界面中完成。
在Style Report中,填报模板的制作有worksheet制作完成,填报界面以及布局安排由viewsheet中完成,接下来,我们就简单了解下Style Report的报表数据填报过程:
此报表数据填报的要实现目标:
1.打开填报页面后,可以在本月数,本年累计,上年同期列填入相应的数据。如果本月已经填报并提交过,会自动弹出提示:该企业本月月报已完成填报!用户无法更改已经填报过的数据。
2.当打开填报页面,在当前选择的月份下页面已经有数据,再次填报或更改数据后,点击保存会提示:数据修改完成。如果从未在当前月份下进行过填报,填入数据点击保存会弹出提示:数据插入完成。不进行提交的动作,用户可以更改数据。
备注:本例中所要填写的单元格内容录入同一数据库中多张物理表,所以需要创建多个指标的query来实现。另外 Style Report的报表数据填报可以实现行式填报,亦可实现将填报内容录入不同数据库的多张物理表的自由填报,同时对填报数据根据实际需要进行计算并且显示(此例中不涉及计算部分内容)
制作步骤:
Step 1: 新建worksheet 数据工作表,创建所需的变量。本例采用数据库表EOO_DATA_INDEX,将其拖入worksheet后定义条件,绑定下图中红色表框中的变量。
Step 3: 在worksheet左侧的资源列表处,调用时间数据表EOO_DATA_INDEX。根据客户自身需要创建需要的指标Query, 例如本例中建立时间Query2、本年累计Query3、上年同期Query4
Step 4: 内联query2,3,4 并设置内联条件为include all values , 得出query5,并新建列—行次,得出表格基本框架。
Step 5:创建另一个query,实现通过下拉框所需要的时间数据。‘结合’最终query表 和 EOO_DATA_INDEX 表的 DATA_TIME列产生本例中的Query8. 创建自定义条件,小于等于当前系统日期。这样选择框的最新时间会随着系统时间的更新而更新。
Step 6: 创建viewsheet, 引入在worksheet中最终完整的表(即 Query9),右键属性编辑-- 表格样式并启用表编辑(编辑多行)根据表格实际情况,仅设置 后三列,启用列编辑 –文本编辑器,即可填入数据。加入 两个提交框,命名为 ‘保存’ 和‘提交’ 。实现保存和提交,才会实现填报的功能。
Step 7: 对“保存”和 “提交”进行JS编写后,当选定月份后,若对应的数据库表里的数据为空,则填入数据点击保存, 数据会存入此例中的EOO_DATA_INDEX,并且会自动弹出提示框:如若对应的数据库表里的数据为不为空,则填入数据点击保存依旧会存入此例中的EOO_DATA_INDEX, 并且会自动弹出提示框:数据修改完成!
当选定月份后,对应的数据库表里的数据不为空,且不可编辑,则是已经完成填报的状态,点击保存, 会自动弹出提示框:该企业本月月报已完成填报!当选定月份相应的数据填报已经完成,点击提交,即可完成此次填报工作。
更多Style Report 的产品信息请登录:http://www.inetsoft.com.cn/products_report/