一种周期性报表系统的制作方法

文档序号:9524179阅读:876来源:国知局
一种周期性报表系统的制作方法
【技术领域】
[0001] 本发明属于数据处理技术领域,尤其设及一种周期性报表系统。
【背景技术】
[0002] 报表功能在应用软件系统中非常重要,它通过提取系统最有价值的数据,并按用 户需求生成图表。实现一个定制化报表有两个方面需要处理,首先是获取业务数据并按要 求进行统计,然后是将统计好的数据交给第Ξ方报表工具生成实际的报表,也可W调用开 发环境的原生图形API来绘制对应的图表。周期性报表则是按特定周期将数据进行趋势统 计,还可W是对多组不同时间段的数据进行同比和环比。周期数据统计在很多行业都大有 用途,统计后数据一般都需要进行报表呈现。
[0003] 然而由于业务的数据类型和统计规则都不确定,难W通过一套通用的代码框架完 成所有周期数据统计功能。因此不同项目通常是各自编码实现整个过程,包括注册周期定 时器,创建数据库表保存统计结果,每个周期定时器触发后执行周期数据统计并保存结果 到库表,最后依赖统计数据借助第Ξ方报表工具读取结果数据库生成最终报表。
[0004] 更高级的实现可W通过写数据库存储过程来实现业务数据的统计,但统计过程的 周期调度还是需要程序来完成,最后统计结果再利用第Ξ方或数据库自带报表工具生成报 表。 阳〇化]目前每个项目自己编码实现其实是比较常见的方式,但运种方式过于原始,开 发维护工作量大;数据库存储过程方式也有编写规则复杂,难W维护,不能跨数据库统计 等问题,且还需要自行实现周期调度。且W后如果升级到其它厂商数据库,就有需要重 写脚本的风险。最后在处理时下一些新的非关系型数据库甚至大数据查询接口返回的 JS0N(JavaScriptObjectNotation)数据时,更是无能为力。

【发明内容】

[0006] 本发明的目的是提供一种周期性报表系统,从周期统计到报表生成过程实现自动 化,避免对每个项目都需要单独编码等现有技术问题。
[0007] 为了实现上述目的,本发明技术方案如下:
[0008] 一种周期性报表系统,所述报表系统包括任务管理模块、统计模块和报表模块,其 中:
[0009] 所述任务管理模块,用于统计任务和报表任务的创建、修改和查询,在每个统计任 务的统计周期到达后,调度统计模块执行该统计任务,在每个报表任务的报表时间到达后, 调度报表模块执行该报表任务;
[0010] 所述统计模块,用于读取统计任务对应的数据集模板,从数据集模板指定的数据 源中读取当前统计周期内数据,按照数据集模板执行统计后,将统计结果数据和本次任务 的执行结果保存;
[0011] 所述报表模块,用于读取报表任务对应的报表配置模板,按照报表配置模板从统 计结果数据中获取数据,生成周期性报表。
[0012] 进一步地,所述统计任务包括统计任务编码、统计任务所在组、统计任务参数、统 计任务采用的数据集模板名称;所述数据集模板包括统计任务获取统计数据时的数据源、 字段列表、统计参数列表、分组和排序规则。
[0013] 进一步地,所述统计任务参数包括统计任务的周期类型、老化数据保存天数、统计 任务依赖的上级任务或上级任务组、统计任务对应的数据库。
[0014] 进一步地,所述统计模块在执行统计任务时,在依赖的统计任务或者任务组内所 有统计任务统计成功后,才能执行当前统计任务的统计。
[0015] 所述统计任务对应的数据库包括目的数据库和任务历史执行记录表,所述统计模 块在执行统计任务时,将统计结果数据保存在目的数据库,将本次任务的执行结果保存在 任务历史执行记录表中。
[0016] 所述统计模块在执行统计任务时,将统计任务参数传给所述数据集模板。
[0017] 本发明所述报表任务包括报表任务编码、报表任务参数、报表任务采用的报表配 置模板、报表样式文件;所述报表样式文件包括报表样式、报表元素和布局;所述报表任务 参数包括报表时间、统计对象和统计周期类型。
[0018] 进一步地,所述报表配置模板包括输入参数、报表样式文件的名称和路径、报表元 素对应的报表数据集,所述输入参数包括报表时间、统计对象和统计周期类型。
[0019] 进一步地,所述报表模块在执行报表任务时,将报表任务参数传给所述报表配置 模板。
[0020] 所述报表模块根据报表配置模板为报表元素获取报表数据集,然后按照报表样式 文件生成报表。
[0021] 本发明提出了一种周期性报表系统,通过创建统计任务和报表任务,实现数据周 期统计到报表生成过程自动化。实现一个周期性报表,只需要配置好统计任务和报表任务 并提供相关的数据集模板和报表配置模板即可,不需要为每一个周期性报表分别编写处理 代码,方便快速部署和维护。
[0022] 同时本发明的周期性报表系统对第Ξ方数据源和报表的依赖性小,扩展和配置简 单,可定制,无需额外编写代码。比如在交通监控软件中,可实现实时统计不同路段一天中 每个小时不同车型违章数量的分布情况,实现定时生成报表或实时生成报表的功能。
[0023]本发明使用数据集模板描述的周期报表数据统计规则,使得复杂的业务统计过程 通过简单的描述来自动构建后台数据统计引擎。并且报表任务可配置,非专业人员即可上 手修改,定制开发报表。本发明还可使用任务历史执行记录表来查看统计结果,方便故障定 位,同时保障了统计过程的鲁棒性,防止同一周期数据被重复统计,或者在所依赖的任务未 执行成功时就开始统计。
【附图说明】
[0024]图1为本发明一种周期性报表系统的系统框图。
【具体实施方式】
[00巧]下面结合附图和实施例对本发明技术方案做进一步详细说明,W下实施例不构成 对本发明的限定。
[00%] 本发明的总体思路是通过数据集模板来定义数据源周期统计规则,同时配置好报 表配置模板,通过解析数据集模板定义的统计规则,先按其指定的周期来对原始数据进行 周期统计,最后结合报表配置模板定时生成周期报表。数据统计的来源可W多样性,支持从 数据库,json,xml文档等数据源获取,统计结果数据的保存支持跨数据库,也可W直接传给 第Ξ方报表工具来生成最终报表。另外会保存所有任务的历史执行记录,方便系统维护和 问题定位。
[0027] 如图1所示,本实施例一种周期性报表系统,包括任务管理模块、统计模块和报表 模块,W下分别进行详细的描述。
[0028] 任务管理模块,用于统计任务和报表任务的创建、修改和查询,在每个统计任务的 统计周期到达后,调度统计模块执行该统计任务,在每个报表任务的报表时间到达后,调度 报表模块执行该报表任务。
[0029]统计模块,用于读取统计任务对应的数据集模板,从数据集模板指定的数据源中 读取当前统计周期内数据,按照数据集模板定义的统计规则执行统计后,将统计结果数据 和本次任务的执行结果保存。
[0030] 报表模块,用于读取报表任务对应的报表配置模板,按照报表配置模板获取数据, 生成周期性报表。
[0031] 本实施例一个统计任务,包括如下内容:
[0032]统计任务编码:唯一标识一个统计任务。
[0033]统计任务所在组:每个统计任务对应有各自的任务所在组,方便管理任务。任务所 在组为可选项,例如本实施例设置了Ξ个任务所在组,分别为:系统分组(system分组),交 通违章分组,交通流量分组。其中系统分组代表系统内部任务,每次系统启动后会自动进入 调度队列执行。
[0034]统计任务采用的数据集模板名称:所采用的数据集模板名称。
[0035]统计任务参数:包括统计任务的周期类型、老化数据保存天数、统计任务依赖的上 级任务或上级任务组、统计任务对应
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1