一种报表模板定制系统的制作方法

文档序号:6605556阅读:246来源:国知局
专利名称:一种报表模板定制系统的制作方法
技术领域
本发明涉及报表定制技术,特别是涉及一种报表模板定制系统。
背景技术
目前,人们在生产生活中几乎都离不开报表的使用,如何使用报表具有重要的意 义。一般情况下,报表由表头、表体和表尾组成。从结构来看,表体由标题栏、主体单元格 和数据单元格构成;主体单元格按照行、列分布依次构成主栏(或横表头)、宾栏(或纵表 头),主栏和宾栏可以包含多层结构;从整体来看,表体可以看作是由多个主体单元格和数 据单元格排列、组合而成的。主体单元格用来定义行数据、列数据,而不用来填写和显示数 据;数据单元格用来填写或显示数据。实际应用中,报表中的标题名称、各项目名称以及数 据与报表结构完全绑定,构成了具有实际语义的报表。不同的报表均是独立设计的,相互之 间并不能重复利用相同的单元格。图1和图2为两个报表模板实例。如图1、图2所示,同 一报表模板内和不同报表模板之间存在含义相同的单元格,如图1中的A4和图2中的B3。由此可见,在现有技术中,报表各组成结构之间以及各项目名称、数据与报表结构 之间均绑定在一起,使得不包含有任何数据的报表模板各组成部分与报表数据无法重复使 用,而且增加了报表修改的工作量;当报表模板表头比较复杂,具有多层结构时,如果要修 改该报表模板结构,则必须重新设计整个报表模板;上述这些问题都会导致大量的重复劳 动,增加了工作成本,同时,设计和修改报表的灵活性也比较差。

发明内容
有鉴于此,本发明的主要目的在于提供一种节约成本且报表各组成结构和报表数 据能被复用的报表模板定制系统。为了达到上述目的,本发明提出的技术方案为一种报表模板定制系统,包括客户端、报表模板服务器和数据服务器;其中,客户端,用于向报表模板服务器发送报表模板定制指令、填写报表指令、浏览报表 指令和打印报表指令;根据填写报表指令、浏览报表指令和打印报表指令从报表模块服务 器获取报表后,填写报表、浏览报表和打印报表,并对所述报表模板定制系统进行管理维 护。报表模板服务器,用于根据客户端发送的报表模板定制指令定制报表模板,验证 该报表模板,将通过验证的报表模板各组成部分发送至数据服务器进行存储;根据客户端 发送的填写报表指令、浏览报表指令和打印报表指令,从数据服务器中分别获取相应的报 表模板和原始数据后,将报表模板和原始数据组成的报表转发至客户端。数据服务器,用于分别存储所述报表模板定制系统的系统信息、原始数据和报表 模板服务器发送的报表模板各组成部分,原始数据包括预设数据和用户填写的数据。综上所述,本发明所述报表模板定制系统能将报表模板的各组成部分作为一个个 独立元素以表格形式进行存储,使得主体单元格、数据单元格以及原始数据能随意复用,这
4样,用户可以根据实际需要灵活定制所需报表模板,而且修改报表模板结构也比较容易,提 高了用户管理效率,并节约了人力成本。


图1为现有技术中的报表模板实例一。图2为现有技术中的报表模板实例二。图3为本发明所述报表模板定制系统的组成结构示意图。图4为本发明报表模板服务器的组成结构示意图。图5为图1所示报表模板设计效果示意图。图6为图2所示报表模板设计效果示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对 本发明作进一步地详细描述。图3为本发明所述报表模板定制系统的组成结构示意图。如图3所示,本发明所 述报表模板定制系统包括客户端1、报表模板服务器2和数据服务器3 ;其中,客户端1,用于向报表模板服务器2发送报表模板定制指令、填写报表指令、浏览 报表指令和打印报表指令;根据填写报表指令、浏览报表指令和打印报表指令从报表模块 服务器2获取报表后,填写报表、浏览报表和打印报表,并对所述报表模板定制系统进行管 理维护。报表模板服务器2,用于根据客户端1发送的报表模板定制指令定制报表模板,验 证该报表模板,将通过验证的报表模板各组成部分发送至数据服务器3进行存储;根据客 户端1发送的填写报表指令、浏览报表指令和打印报表指令,从数据服务器3中分别获取相 应的报表模板和原始数据后,将报表模板和原始数据组成的报表转发至客户端1。数据服务器3,用于分别存储所述报表模板定制系统的系统信息、原始数据和报表 模板服务器2发送的报表模板各组成部分,原始数据包括预设数据和用户填写的数据。实际应用中,本发明所述报表模板定制系统的系统信息、原始数据和报表模板服 务器2发送的报表模板均以表格形式存储,具体包括指标维度表、原始数据存储表、报表数 据单元格信息表、报表结构信息表、单位信息表、用户信息表、报表结构对象信息表。本发明中,报表模板服务器2根据客户端1定制模板的要求,定制相应的报表模 板,并对该报表模板进行校验,将通过校验的报表模板以报表结构信息表、指标维度表、报 表结构对象信息表、数据单元格信息表的形式存储于数据服务器3中;当客户端1要求填写 报表、浏览报表或打印报表时,报表模板服务器2从数据服务器3中获取报表模板各组成部 分,同时,从数据服务器3存储的原始数据信息表、单位信息表、用户信息表中获取原始数 据,根据所获取的报表模板描述信息和原始数据描述信息,将获取的报表模板和原始数据 对应组合为报表,并将该报表转发至客户端。由此可见,本发明将报表模板的各组成部分作 为一个个独立元素以表格形式进行存储,各表格之间又以关系数据库的方式发生联系,这 样报表模板的各组成部分可以随意复用,同时,由于报表模板与原始数据间的松散耦合,也 实现了报表模板的复用和原始数据的复用,增加了使用灵活性,节约了人力成本。
图4为本发明报表模板服务器的组成结构示意图。如图4所示,报表模板服务器 2包括主体单元格设计模块21、表头表尾设计模块22、报表模板设计模块23、校验模块24、 报表模板应用模块25、主体单元格管理模块26和报表模板修改模块27 ;其中,主体单元格设计模块21,用于从数据服务器3中选择确定主栏组成信息和宾栏组 成信息的指标维度,将各指标维度副本拖拽到主栏位置和宾栏位置,生成主体单元格,将主 体单元格发送至报表模板设计模块23,将主体单元格描述信息存储于报表数据单元格信息 表、报表结构信息表中;还用于管理主体单元格与主体单元格描述字段之间的映射关系。实际应用中,指标维度以分类分块分等级的树形结构显示。实际应用中,主体单元格的设计内容包括主体单元格名称、主体单元格与数据服 务器中的主体单元格描述字段之间的映射关系、主体单元格描述字段值。这里,主体单元格 描述字段值以预设数据的方式存储在数据服务器的原始数据表中;主体单元格与数据服务 器中的主体单元格描述字段之间的映射关系的确定为现有技术,此处不再赘述。例如,在如 图1和图2所示的报表中,主体单元格与主体单元格描述字段之间的映射关系如表1所示。表1图1和图2所示报表模板主单元格与主体单元格描述字段之间的映射关系 实际应用中,主体单元格描述字段通常是有预设值的,而且也是允许不完整的,因 此,根据主体单元格描述字段,该主体单元格与数据库中对应的原始数据不一定唯一。数据 单元格描述字段通过校验处理,使得该数据单元格能唯一对应数据库中的原始数据。表头表尾设计模块22,用于设计表头信息和表尾信息,并将表头信息发送至数据 服务器3进行查询,根据查询结果修改所设计的表头信息,并将表尾信息和修改后的表头 信息发送至报表模板设计模块23和数据服务器3。实际应用中,表头信息包括标题、报表单位、报表编号、报表类型,表尾信息包括报 表日期、填表人信息以及审核人信息。其中,报表类型包括月帐、统计表和台账。实际应用中,将表头信息发送至数据服务器3进行查询,根据查询结果修改所设 计的表头信息具体为将所设计的表头信息中的标题发送至数据服务器3进行查询,当数 据服务器3中存在该标题时,修改所设计的表头信息中的标题;当数据服务器3中不存在该 标题时,存储标题。报表模板设计模块23,用于在空白报表模板中,在表头和表尾位置放置表头表尾 设计模块22发送的表头信息和表尾信息,在主栏和宾栏位置放置主体单元格设计模块21 发送的主体单元格,在主栏和宾栏所含各行和各列的所有交叉位置形成数据单元格,完成 报表模板设计;将该报表模板发送至校验模块24。实际应用中,空白报表模板是由一个标题栏、多行多列构成的单元格构成的空白 表格。实际应用中,主体单元格可以通过设置主栏计数或宾栏级数、合并或拆分主体单 元格等方式构成复杂的多层主栏、多层宾栏。校验模块24,用于校验报表模板设计模块23发送的报表模板,使得该报表模板中 的数据单元格能从数据服务器3中唯一地映射到一个预设数据;将通过校验的报表模板各 组成部分发送至数据服务器3进行存储。实际应用中,校验报表模板设计模块23发送的报表模板具体为将数据单元格描 述字段值设置为空,并设该数据单元格描述字段值为集合S ;复制该数据单元格所属报表 的标题描述字段值,作为集合S的第一元素;复制该数据单元格对应的主栏描述字段值,作 为集合S的第二元素;复制该数据单元格对应的宾栏描述字段值,作为集合S的第三元素; 由第一元素、第二元素和第三元素组成集合S ;在数据服务器3中查找与集合S相对应的唯 一数据,并将其显示在该数据单元格中。
报表模板应用模块25,用于根据客户端1发送的填写报表指令、浏览报表指令或 打印报表指令,从数据服务器3中获取与填写报表指令、浏览报表指令或打印报表指令相 对应的报表模板和原始数据,并将获取的报表模板和原始数据组成相应的报表后转发至客 户端1。主体单元格管理模块26,用于对主体单元格进行增加、删除、修改、合并、拆分,并 记录主体单元格的被引用信息。报表模板修改模块27,用于修改报表模板设计模块23发送的报表模板。实际应用中,报表模板的修改非常简单,只需根据需要调整主体单元格的位置即 可。本发明中,填写报表具体为报表模板应用模块23根据客户端1发送的填写报表 指令,按照所要求填写的报表中的数据单元格与数据单元格描述字段之间的映射关系,在 数据服务器3的原始数据表中查找匹配数据,如果没有匹配数据,则在原始数据表中插入 一条新的数据记录;如果有匹配数据,则将该匹配数据修改为用户填写数据。本发明中,浏览报表具体为报表模板应用模块23根据客户端1发送的浏览报 表指令,按照所要求浏览报表对应的报表模板的表头与表头信息之间的映射关系、表尾与 表尾信息之间的映射关系、主体单元格与主体单元格描述字段之间的映射关系,将从报表 结构信息表中查找到的匹配表头信息、表尾信息和主体单元格描述字段组合为匹配报表模 板;根据所要求浏览报表中的数据单元格与数据单元格描述字段之间的映射关系,从原始 数据表查找匹配数据,并将匹配数据显示在该匹配报表模板的相应数据单元格中。本发明中,打印报表与浏览报表的过程相同。这里,表头与表头信息之间的映射关系、表尾与表尾信息之间的映射关系、数据单 元格与数据服务器中的数据单元格描述字段之间的映射关系的确定也均为现有技术,此处 不再赘述。本发明中,数据单元格描述字段包括所述数据单元格对应的主栏、宾栏以及所属 报表模板的表结构编号;标题描述字段包括报表所属表结构编号、表结构名称、结构表名和 表结构类型;主栏描述字段包括主栏所属报表的表结构编号、确定主栏组成信息的指标维 度ID ;宾栏描述字段包括宾栏所属报表的表结构编号、确定宾栏组成信息的指标维度ID。实际应用中,上述各种描述字段可能涉及数据库中的多张表格。如图1、图2所示 的报表模板中,为了能获得数据单元格的数据值,本发明使用了 4个数据单元格描述字段, 如表2所示。表2图1和图2所示报表模板中的数据单元格描述字段 实际应用中,根据本发明所述报表模板定制系统定制的如图1所示的报表模板填 写报表、浏览报表或打印报表时,可以按月周期使用该报表模板,并在标题上写明确切月 份。实际应用中,客户根据主体单元格、数据单元格、表头信息和表尾信息与数据库中 的各表格相关字段之间的映射关系,获取主体单元格描述字段、数据单元格描述字段、表头 信息和表尾信息;根据主体单元格描述字段,由指标维度形成客户所需的主体单元格;根 据数据单元格描述字段确定数据单元格属性,进而,由表头信息、表尾信息、主体单元格、数 据单元格组成报表模板。图5为图1所示报表模板设计效果示意图。图6为图2所示报表 模板设计效果示意图。采用主体单元格设计模块、报表模板设计模块对图1、图2所示的报 表模板进行主单元格设计后,得到如图5、图6所示的报表模板设计示例。从图5、图6可知, 主体单元格可以被复用,而且可以实现多层宾栏或多层主栏。如图2所示报表模板中的数据单元格,比如C3,C3数据单元格描述字段为报表模 板标题描述字段值+C3对应的主栏描述字段值+C3对应宾栏描述字段值的集合,其相当于 图6所示报表模板中的No. 2+No. 8+No. 5+No. 3,参照表1所示的映射关系,可知C3数据单元 格描述字段值为 StatType (Sales) +Month (1) +Source (FirstFiliale) +ProdType (Petroleu m),从而可从数据库中获取唯一映射的数据。综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。 凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的 保护范围之内。
9
权利要求
一种报表模板定制系统,其特征在于,所述系统包括客户端、报表模板服务器和数据服务器;其中,客户端,用于向报表模板服务器发送报表模板定制指令、填写报表指令、浏览报表指令和打印报表指令;根据填写报表指令、浏览报表指令和打印报表指令从报表模块服务器获取报表后,填写报表、浏览报表和打印报表,并对所述报表模板定制系统进行管理维护;报表模板服务器,用于根据客户端发送的报表模板定制指令定制报表模板,验证该报表模板,将通过验证的报表模板各组成部分发送至数据服务器进行存储;根据客户端发送的填写报表指令、浏览报表指令和打印报表指令,从数据服务器中分别获取相应的报表模板和原始数据后,将报表模板和原始数据组成的报表转发至客户端;数据服务器,用于分别存储所述报表模板定制系统的系统信息、原始数据和报表模板服务器发送的报表模板各组成部分,原始数据包括预设数据和用户填写的数据。
2.根据权利要求1所述的定制系统,其特征在于,所述报表模板定制系统的系统信息、 原始数据和报表模板服务器发送的报表模板均以表格形式存储,具体包括指标维度表、原 始数据存储表、报表数据单元格信息表、报表结构信息表、单位信息表、用户信息表、报表结 构对象信息表。
3.根据权利要求2所述的定制系统,其特征在于,所述报表模板服务器包括主体单元 格设计模块、表头表尾设计模块、报表模板设计模块、校验模块、报表模板应用模块、主体单 元格管理模块和报表模板修改模块;其中,主体单元格设计模块,用于从所述数据服务器中选择确定主栏组成信息和宾栏组成信 息的指标维度,将各指标维度副本拖拽到主栏位置和宾栏位置,生成主体单元格,将主体单 元格发送至报表模板设计模块,将主体单元格描述信息存储于报表数据单元格信息表、报 表结构信息表中;还用于管理主体单元格与主体单元格描述字段之间的映射关系;表头表尾设计模块,用于设计表头信息和表尾信息,并将表头信息发送至所述数据服 务器进行查询,根据查询结果修改所设计的表头信息,并将表尾信息和修改后的表头信息 发送至报表模板设计模块和所述数据服务器;报表模板设计模块,用于在空白报表模板中,在表头和表尾位置放置表头表尾设计模 块发送的表头信息和表尾信息,在主栏和宾栏位置放置主体单元格设计模块发送的主体单 元格,在主栏和宾栏所含各行和各列的所有交叉位置形成数据单元格,完成报表模板设计; 将该报表模板发送至校验模块;校验模块,用于校验报表模板设计模块发送的报表模板,使得该报表模板中的数据单 元格能从所述数据服务器中唯一地映射到一个预设数据;将通过校验的报表模板各组成部 分发送至所述数据服务器进行存储;报表模板应用模块,用于根据所述客户端发送的填写报表指令、浏览报表指令或打印 报表指令,从所述数据服务器中获取与填写报表指令、浏览报表指令或打印报表指令相对 应的报表模板和原始数据,并将获取的报表模板和原始数据组成相应的报表后转发至客户 端。主体单元格管理模块,用于对主体单元格进行增加、删除、修改、合并、拆分,并记录主 体单元格的被引用信息;报表模板修改模块,用于修改报表模板设计模块发送的报表模板。
4.根据权利要求3所述的定制系统,其特征在于,所述指标维度以分类分块分等级的 树形结构显示。
5.根据权利要求3所述的定制系统,其特征在于,所述主体单元格的设计内容包括主 体单元格名称、主体单元格与所述数据服务器中的主体单元格描述字段之间的映射关系、 主体单元格描述字段值。
6.根据权利要求3所述的定制系统,其特征在于,所述表头信息包括标题、报表单位、 报表编号、报表类型;所述将表头信息发送至所述数据服务器进行查询,根据查询结果修改所设计的表头信 息具体为将所设计的表头信息中的标题发送至所述数据服务器进行查询,当所述数据服 务器中存在该标题时,修改所设计的表头信息中的标题;当所述数据服务器中不存在该标 题时,存储标题;所述表尾信息包括报表日期、填表人信息以及审核人信息。
7.根据权利要求3所述的定制系统,其特征在于,所述校验报表模板设计模块发送的 报表模板具体为将数据单元格描述字段值设置为空,并设该数据单元格描述字段值为集 合S ;复制该数据单元格所属报表模板的标题描述字段值,作为集合S的第一元素;复制该 数据单元格对应的主栏描述字段值,作为集合S的第二元素;复制该数据单元格对应宾栏 描述字段的值,作为集合S的第三元素;由第一元素、第二元素和第三元素组成集合S ;在所 述数据服务器中查找与集合S相对应的唯一数据,并将其显示在所述数据单元格中。
8.根据权利要求7所述的定制系统,其特征在于,所述数据单元格描述字段包括所述 数据单元格对应的主栏、宾栏以及所属报表模板的表结构编号;所述标题描述字段包括报 表所属表结构编号、表结构名称、结构表名和表结构类型;所述主栏描述字段包括主栏所属 报表的表结构编号、确定主栏组成信息的指标维度ID ;所述宾栏描述字段包括宾栏所属报 表的表结构编号、确定宾栏组成信息的指标维度ID。
9.根据权利要求8所述的定制系统,其特征在于,所述填写报表具体为所述报表模板 应用模块根据所述客户端发送的填写报表指令,按照所要求填写的报表中的数据单元格与 数据单元格描述字段之间的映射关系,在所述原始数据表中查找匹配数据,如果没有匹配 数据,则在所述原始数据表中插入一条新的数据记录;如果有匹配数据,则将该匹配数据修 改为用户填写数据。
10.根据权利要求8所述的定制系统,其特征在于,所述浏览报表具体为所述报表模 板应用模块根据所述客户端发送的浏览报表指令,按照所要求浏览报表对应的报表模板的 表头与表头信息之间的映射关系、表尾与表尾信息之间的映射关系、主体单元格与主体单 元格描述字段之间的映射关系,将从所述报表结构信息表中查找到的匹配表头信息、表尾 信息和主体单元格描述字段组合为匹配报表模板;根据所要求浏览报表中的数据单元格与 数据单元格描述字段之间的映射关系,从所述原始数据表查找匹配数据,并将匹配数据显 示在该匹配报表模板的相应数据单元格中。
全文摘要
本发明公开了一种报表模板定制系统,包括客户端、报表模板服务器和数据服务器;其中,客户端用于发送报表模板定制指令、填写报表指令、浏览报表指令和打印报表指令,填写报表、浏览报表和打印报表,并对所述报表模板定制系统进行管理维护;报表模板服务器用于定制、验证报表模板,并向客户端转发从数据服务器中分别获取的报表模板和原始数据组成的报表;数据服务器用于存储所述报表模板定制系统的系统信息、原始数据和报表模板。本发明能通过独立存储的报表模板各组成部分,灵活设计所需报表模板,提高了用户管理效率,并节约了成本,可广泛应用于应用报表的各行各业中。
文档编号G06F17/24GK101908039SQ20101022122
公开日2010年12月8日 申请日期2010年6月29日 优先权日2010年6月29日
发明者胡长军, 赵冲冲, 赵立勇 申请人:北京科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1