数据处理系统的制作方法

文档序号:6585265阅读:279来源:国知局

专利名称::数据处理系统的制作方法
技术领域
:本发明涉及报表应用,具体而言,涉及一种在分析报表和采集报表之间实现数据再利用的数据处理系统。
背景技术
:报表应用通常分为分析报表和采集报表两大类。分析报表是以对业务系统数据进行统计分析为目的所设计的报表,数据从业务系统(可能来自单个数据源、多个数据源或文件系统)抽取出来,成为一个或多个带有元数据描述的二维数据集合(又称数据集),这些数据集经过数据加工变换之后,被放置到一个经过灵活设计的报表格式当中予以展现,用户在浏览报表时可以对数据进行分析处理,也可以将报表输出、发布或重新物化成为数据库的表结构。分析报表数据通常不支持编辑,而是更多地与查询结合在一起。采集报表是一种支持填报录入的EXCEL风格报表,它具有相对固定的表样,支持表单元格的录入或公式定制,公式通常体现为从业务系统获取数据的单元取数函数。采集表的表样和数据都支持存储,并且根据企业需要应支持一定的报送管理流程,即上级下发表样,下级根据表样填报数据并上报给上级。采集报表在中国式报表应用当中具有非常重要的地位,也是合并报表、汇总报表等业务应用的基础。图1示意了现有技术方案通常采用的分析报表独立流程和采集报表独立流程。随着企业报表数据的丰富和BI(商业智能)理念的普及,以及集团报表管理水平的日益提高,分析报表和采集报表互不相干的应用模式已经难以满足业务管理者的要求。通过采集报表渴望通过各种灵活取数方式来获得分析数据,分析数据也希望利用采集报表的业务流程得到更好的组织间管理,因此采集报表展现业务分析数据具有实际意义;另一方面,像资产负债表、利润表这样代表着企业对内对外规范报告方式的采集报表数据,同样希望接受灵活强大的统计分析处理,甚至送BI系统进行更高层的管理决策应用。现有报表产品厂商,一般都可归为分析报表或采集表中的一类,前者数量众多且不乏国际BI巨头,后者则更多地与ERP软件应用结合在一起。虽然为了争夺广大的国内市场,某一类的报表厂商也在尝试增强另一类报表应用的功能和技术方案,但总体来讲主要存在下述问题(1)分析报表与采集报表在取数模式上存在不统一,前者通常是数据库查询,后者通常是单元取数公式,两者从数据结构和数据容器上都不够兼容;(2)分析报表与采集报表在数据存储模型上存在不统一,前者通常不存储,即便存储也是根据数据结果集静态创建物化表(快照),后者由于指标提取的随意性,存储结果的结构完全动态,而且通常存储于独立于业务系统的报表系统数据源中;(3)分析报表与采集报表实现数据再利用的数据来源存在不统一,前者通常来自业务系统或数据仓库,后者通常来自报表系统;(4)采集报表相对固定的格式区域难以展现动态行列结构的分析数据;4因此,在分析报表与采集报表之间实现数据再利用的方法将产生重大的企业管理价值。
发明内容为解决上述问题,本发明提供了一种数据处理系统,用于实现分析报表和采集报表之间的数据再利用,包括数据集单元,用于储存来自数据提供单元的数据;所述数据提供单元,连接至对应于所述分析报表的业务系统和对应于所述采集报表的报表系统,用于采集所述业务系统和所述报表系统的数据,并将所采集的数据发送给所述数据集单元;分析表展现单元,连接至所述数据集单元,用于展现来自所述数据集单元的业务数据;数据集函数单元,连接至所述数据集单元,根据数据集函数从所述数据集单元获取数据;以及采集表展现单元,连接至所述数据集函数单元,用于展现来自所述数据集函数单元的数据。在上述技术方案中,所述数据处理系统进一步包括分析表物化单元,连接至所述分析表展现单元,用于将来自所述分析表展现单元的数据以快照形式存储到所述业务系统中,从而生成物化表。在上述技术方案中,所述数据提供单元包括查询数据提供单元,连接至所述业务系统,用于从所述业务系统获取查询数据;代码数据提供单元,连接至所述业务系统,用于从所述业务系统获取代码数据;文件数据提供单元,连接至所述业务系统,用于从所述业务系统获取文件数据;以及采集报表数据提供单元,连接至所述报表系统,用于从所述报表系统获取采集报表数据。在上述技术方案中,所述查询数据提供单元、所述代码数据提供单元、所述文件数据提供单元、所述采集报表数据提供单元分别均包括数据变换描述符接收装置,用于接收数据变换描述符;数据集元数据生成装置,用于生成数据集元数据;数据集数据体生成装置,用于生成数据集数据体;数据集生成界面向导装置,用于提供用户完成数据集生成所需要的信息和相关的上下文设置;以及数据提供优化与强化装置,用于对数据进行优化或强化数据分析功能。在上述技术方案中,所述数据处理系统进一步包括单元取数函数单元,连接在所述业务系统和所述采集表展现单元之间,用于从所述业务系统获取数据,并传送给所述采集表展现单元。在上述技术方案中,所述单元取数函数单元还用于在所述采集表的表样的相应单元格中设置单元取数函数。在上述技术方案中,所述数据处理系统进一步包括采集表存储单元,连接至所述采集表展现单元,用于将来自所述采集表展现单元的数据存储至所述报表系统。在上述技术方案中,所述采集表存储单元用于根据当前设置的维度情况,将录入或计算出的指标项储存到所述报表系统,从而形成动态表。在上述技术方案中,所述数据处理系统进一步包括ETL引擎,连接至所述数据集单元,用于对来自所述数据集单元的数据进行清洗转换,将经过清洗转换的数据加载到数据仓库中,以供商务智能系统进行多维分析或数据挖掘。在上述技术方案中,所述采集表展现单元用于根据指定的维度,在设计好的相对固定的表样上,加载并计算出用户录入的数据和设置的公式,从而形成采集报表。通过上述技术方案,本技术方案较好地解决了应用领域中存在的问题,其特点是(1)将分析报表和采集报表的取数统一为数据提供者模式,并根据应用场景不同派生出多种数据提供者的实现,比如查询数据提供者、代码数据提供者等。数据提供者提供统一接口的数据集;(2)在采集报表的单元取数函数基础上增加一种接收数据集的函数,称为数据集函数;(3)提供一种从报表系统取数的数据提供者,称为采集报表数据提供者;(4)在分析报表、采集报表和BI三层的基础上,基于上述准备,提供支持数据灵活流转的数据绿色通道框架。图1是根据现有技术的常见的分析报表独立流程和采集报表独立流程的示意图;图2是根据本发明的数据处理系统的示意框图;图3是根据本发明的一个实施例的数据处理系统的总体技术方案框架的示意图;图4是根据本发明的一个实施例的数据处理系统中的数据提供者与数据集的基本原理的示意图;图5是根据本发明的一个实施例的数据处理系统中的数据提供者的分类以及它们能够生成二维数据对象的原理的示意图;图6是根据本发明的一个实施例的数据处理系统中的查询数据提供者和采集报表数据提供者的原理的示意图;图7A至7F是根据本发明的一个实施例的数据处理系统的不同技术方案内容的示意图;图8A至8F是根据本发明的一个实施例的数据处理系统的分析数据送采集报表展现的示意图;图9A至9D是根据本发明的一个实施例的数据处理系统的采集数据送分析报表展现的示意图。具体实施例方式下面将详细参考本发明的优选实施例,根据附图来描述优选实施例的示例。图2是根据本发明的数据处理系统的示意框图。如图2所示,本发明提供了一种数据处理系统200,用于实现分析报表和采集报表之间的数据再利用,包括数据集单元202,用于储存来自数据提供单元204的数据;所述数据提供单元204,连接至对应于所述分析报表的业务系统206和对应于所述采集报表的报表系统208,用于采集所述业务系统206和所述报表系统208的数据,并将所采集的数据发送给所述数据集单元202;分析表展现单元210,连接至所述数据集单元202,用于展现来自所述数据集单元202的业务数据;数据集函数单元212,连接至所述数据集单元202,根据数据集函数从所述数据集单元202获取数据;以及采集表展现单元214,连接至所述数据集函数单元212,用于展现来自所述数据集函数单元212的数据。6在上述技术方案中,所述数据处理系统200进一步包括分析表物化单元,连接至所述分析表展现单元210,用于将来自所述分析表展现单元210的数据以快照形式存储到所述业务系统206中,从而生成物化表。在上述技术方案中,所述数据提供单元204包括查询数据提供单元,连接至所述业务系统206,用于从所述业务系统206获取查询数据;代码数据提供单元,连接至所述业务系统206,用于从所述业务系统206获取代码数据;文件数据提供单元,连接至所述业务系统206,用于从所述业务系统206获取文件数据;以及采集报表数据提供单元,连接至所述报表系统208,用于从所述报表系统208获取采集报表数据。在上述技术方案中,所述查询数据提供单元、所述代码数据提供单元、所述文件数据提供单元、所述采集报表数据提供单元分别均包括数据变换描述符接收装置,用于接收数据变换描述符;数据集元数据生成装置,用于生成数据集元数据;数据集数据体生成装置,用于生成数据集数据体;数据集生成界面向导装置,用于提供用户完成数据集生成所需要的信息和相关的上下文设置;以及数据提供优化与强化装置,用于对数据进行优化或强化数据分析功能。在上述技术方案中,所述数据处理系统200进一步包括单元取数函数单元,连接在所述业务系统206和所述采集表展现单元214之间,用于从所述业务系统206获取数据,并传送给所述采集表展现单元214。在上述技术方案中,所述单元取数函数单元还用于在所述采集表的表样的相应单元格中设置单元取数函数。在上述技术方案中,所述数据处理系统200进一步包括采集表存储单元,连接至所述采集表展现单元214,用于将来自所述采集表展现单元214的数据存储至所述报表系统208。在上述技术方案中,所述采集表存储单元用于根据当前设置的维度情况,将录入或计算出的指标项储存到所述报表系统208,从而形成动态表。在上述技术方案中,所述数据处理系统200进一步包括ETL引擎,连接至所述数据集单元202,用于对来自所述数据集单元202的数据进行清洗转换,将经过清洗转换的数据加载到数据仓库中,以供商务智能系统进行多维分析或数据挖掘。在上述技术方案中,所述采集表展现单元214用于根据指定的维度,在设计好的相对固定的表样上,加载并计算出用户录入的数据和设置的公式,从而形成采集报表。图3是根据本发明的一个实施例的数据处理系统的总体技术方案框架的示意图。总体技术方案框架如图3所示其中的功能模块或装置说明如下数据集单元带有元数据描述的自适应的二维数据集合,可作为一类对象资源存在;数据提供者(数据提供单元)用于从数据库系统或文件系统抽取并转换业务数据的统一接口,其返回的数据结果为数据集。根据应用场景不同,数据提供者可派生出多种实现,比如图示的查询数据提供者(查询数据提供单元)、代码数据提供者(代码数据提供单元)、文件数据提供者(文件数据提供单元)和采集表数据提供者(采集表数据提供单元)等;单元取数函数(单元取数函数单元)对应于采集报表上一个单元格的取数函数,返回值通常为1*1的单值。取数函数可能直接从业务系统获取数据或计算结果,也可能为其它表单元的运算结果;数据集函数(数据集函数单元)一类特殊的取数函数,其返回值通常为l^n的二维数据集合,该函数通过传入数据集ID和相关参数设置值获取指定的数据集结果;分析表展现(分析表展现单元)根据某种分析的维度,以灵活的表格、图表及其它UI控件对业务数据进行展现从而形成一张分析报表的模块,带有多种系统自带的数据统计分析功能(如排序、过滤、分级小计、交叉、穿透、占比、排名等),通常具有格式设计态和运行态的差别;分析表物化装置(物化单元)将当前查询出来(或界面处理过)的数据快照到数据库当中形成一张物化表的装置,这种物化表通常需要结合数据字典或元数据等方式予以管理;采集表展现(采集表展现单元)根据指定的维度,在设计好的相对固定的表样上,加载并计算出用户录入的数据和设置的公式从而形成一张采集报表的模块,带有多种系统自带的业务功能(如汇总、舍位平衡、合并、折算等),通常具有表样态和数据态的差别;采集表存储装置(采集表存储单元)结合当前设置的维度情况,将录入或计算出来的指标项存储到报表系统形成一张动态表的装置;ETL引擎(Extract,Transform,Load引擎抽取转换装载引擎)将数据中间结果(以数据集的方式存在)经过清洗转换后,按照可配置的定时或手动调度任务加载到数据仓库当中,并负责目标元数据的注册与管理。其目的是把有意义的历史数据送BI系统进行多维分析或数据挖掘;鉴于数据提供者与数据集在本发明中的重要作用,以下专门对其工作原理进行说明。需要强调的是,数据提供者与数据集的技术思路在业内已提出多年,本发明虽对其有所发展,但所侧重的保护点还是后面提到的基于该技术思路的各种应用方案。1)数据提供者与数据集的基本原理(这部分的原创性主要是对数据提供者的扩充)如图4所示,数据提供者的核心使命是产生数据集,此外还有一些为此服务的装置。数据集是包含一维元数据与二维数据体的结构,任何包含元数据描述的二维数据对象从理论上说与数据集都是同构的,在技术上容易实现二维数据对象到数据集的生成转换,因此数据提供者最本质的后台工作就是产生二维数据对象。2)数据提供者的分类以及它们能够生成二维数据对象的原理如图5所示,SQL数据提供者从关系型数据库通过查询SQL方式最终获得数据,很显然,一个SQL的查询结果本身就是带有元数据描述的二维数据对象,比如字段l字段2字段3字段43123<table>tableseeoriginaldocumentpage9</column></row><table>文件数据提供者从文件系统经过提供者内部的解析逻辑获取数据,解析过程会对文件按照某种规则添加分隔符,使其产生类似EXCEL文件那样的多个列,并对每列设定元数据所需要的信息。显然这种过程也容易产生二维数据对象,比如<formula>formulaseeoriginaldocumentpage9</formula>代码数据提供者通过编写代码来提供数据,由于编码的随意性,既可以通过访问数据库系统或文件系统来获取数据,也可以"凭空"地构造出数据。面向对象的程序语言非常容易产生出二维的数据对象,只要声明出一个一维的对象数组作为元数据、一个二维的对象数组作为数据载体,并且保证两者在列数目上能够对应就可以了。比如,我们声明了这样一个类A:PublicclassA{PublicObject[]meta;PublicObject[][]data;}那么,通过下述实例化过程产生的内存对象A就是具有元数据描述的简单二维数据对象Aa=newA();a.meta=newObject[]("column1","column2"};a.data=new0bject[][川"a",1},{"b",2}};3)两类重要的SQL数据提供者(这部分是有原创性的)如图6所示,通常,业务数据库系统和报表数据库系统的主要差异在于前者的数据库设计静态而规范,数据的存储基本与相关的业务实体在表格展现中的形式保持一致;后者的数据库设计动态且不透明,某张报表上的某个指标具体存在哪张动态数据表的哪个动态字段上,需要结合业务逻辑通过专门的索引才能找到。这种差异是由报表系统在采集录入和存储时的便捷性和灵活性需求所决定的。查询数据提供者中指定了一个查询模型,通过该查询模型生成SQL到业务系统中获取数据并对外提供。通过查询模型生成SQL的技术方案已有多种实现,比如专利申请号为200810224179.3的发明中所描述的实现。采集报表数据提供者在数据集生成界面向导(可参考检则与实验验证中的实施例2)中要求使用者从采集表样中选取指标,再通过提供者内部的逻辑,利用索引找到相关指标的存储表和存储字段,拼出查询SQL,实现二维数据对象的提供。本发明的技术应用方案具体内容包括1)业务数据送分析表展现如图7A所示,数据提供者从业务系统获取数据,以数据集的形式送给分析表展现模块做格式设计及报表展现,支持进一步的报表分析应用及统一应用,也支持分析结果物化到数据库。2)业务数据传统方式送采集表展现如图7B所示,在采集表设计的表样中,在相应的单元格中设置了单元取数函数。在数据态,各业务模块的单元取数函数从业务系统获取数据并展现在表样中,支持进一步的报表业务应用及统一应用,也支持将采集录入/计算的结果存储到报表数据库。3)分析数据送采集表展现如图7C所示,数据提供者从业务系统获取数据,生成数据集。在采集表设计的表样中,在相应的单元格中设置数据集函数,获取相关数据集。在数据态,数据集函数从业务系统获取数据并展现在表样中,支持进一步的报表业务应用及统一应用,也支持将采集录入/计算的结果存储到报表数据库。4)采集数据送分析表展现如图7D所示,采集报表数据提供者从报表系统获取数据,以数据集的形式送给分析表展现模块做格式设计及报表展现,支持进一步的报表分析应用及统一应用,也支持分析结果物化到数据库。这里的采集报表数据提供者与其它常规提供者实现上有所不同,应结合报表系统的实际存储模型设计相应的指标映射逻辑和界面来完成。5)分析数据、采集数据送BI展现如图7E所示,各类数据提供者从业务系统和报表系统提取数据,生成数据集(通常是多个),送ETL引擎进行清洗转换,并按指定的目标模型加载到数据仓库成为事实表或维表,进而通过第三方BI产品支持BI应用。这里的ETL引擎模块已有多种业内实现,本技术方案主要要求该模块支持传入统一的数据集合接口,比如数据集。6)分析报表、采集报表、BI三个层面的数据流转总图如图7F所示,上述五种方式的应用全貌,通过多种闭环的数据流转方式,充分提升了分析报表、采集报表和BI三个层面的数据再利用效率,使得各类数据最终支持报表分析应用、业务应用、统一应用以及BI应用。以下是对根据本发明的一个实施例的数据处理系统进行检则和实验验证1)分析数据送采集报表展现的范例如图8A所示,在采集表格式设计中创建动态区,在动态区上弹出公式向导,选择GETDATA数据集函数。如图8B所示,弹出数据集函数定义向导,选择数据集'资产负债表数据集'。如图8C所示,在第二步骤点'新增'按钮添加取数字段。如图8D所示,设置相应取数字段。如图8E所示,保存数据集函数定义,返回公式向导。如图8F所示,采集报表数据态预览结果。2)采集数据送分析报表展现的范例如图9A所示,通过报表数据提供者的界面向导,在表样中选取指标用以生成数据集。如图9B所示,在上述向导中设置元数据字段。10如图9C所示,在分析报表设计器中,将数据集插入到分析报表中。如图9D所示,对上述分析报表进行展现。通过上面结合附图对本发明的实施例的描述,可以清楚的理解,根据本发明的数据处理系统,在同行产品当中,率先实现了以下几点有益效果1)分析数据送采集报表展现,从而支持进一步的报表业务应用;2)采集数据送分析报表展现,从而支持进一步的报表分析应用;3)分析数据、采集数据送BI展现,从而支持进一步的BI应用;4)提出了分析报表、采集报表、BI三个层面的数据流转绿色通道框架思路。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。权利要求一种数据处理系统,用于实现分析报表和采集报表之间的数据再利用,其特征在于,包括数据集单元,用于储存来自数据提供单元的数据;所述数据提供单元,连接至对应于所述分析报表的业务系统和对应于所述采集报表的报表系统,用于采集所述业务系统和所述报表系统的数据,并将所采集的数据发送给所述数据集单元;分析表展现单元,连接至所述数据集单元,用于展现来自所述数据集单元的业务数据;数据集函数单元,连接至所述数据集单元,根据数据集函数从所述数据集单元获取数据;以及采集表展现单元,连接至所述数据集函数单元,用于展现来自所述数据集函数单元的数据。2.根据权利要求1所述的数据处理系统,其特征在于,进一步包括分析表物化单元,连接至所述分析表展现单元,用于将来自所述分析表展现单元的数据以快照形式存储到所述业务系统中,从而生成物化表。3.根据权利要求1所述的数据处理系统,其特征在于,所述数据提供单元包括查询数据提供单元,连接至所述业务系统,用于从所述业务系统获取查询数据;代码数据提供单元,连接至所述业务系统,用于从所述业务系统获取代码数据;文件数据提供单元,连接至所述业务系统,用于从所述业务系统获取文件数据;以及采集报表数据提供单元,连接至所述报表系统,用于从所述报表系统获取采集报表数据。4.根据权利要求3所述的数据处理系统,其特征在于,所述查询数据提供单元、所述代码数据提供单元、所述文件数据提供单元、所述采集报表数据提供单元分别均包括数据变换描述符接收装置,用于接收数据变换描述符;数据集元数据生成装置,用于生成数据集元数据;数据集数据体生成装置,用于生成数据集数据体;数据集生成界面向导装置,用于提供用户完成数据集生成所需要的信息和相关的上下文设置;以及数据提供优化与强化装置,用于对数据进行优化或强化数据分析功能。5.根据权利要求1至4中任一项所述的数据处理系统,其特征在于,进一步包括单元取数函数单元,连接在所述业务系统和所述采集表展现单元之间,用于从所述业务系统获取数据,并传送给所述采集表展现单元。6根据权利要求5所述的数据处理系统,其特征在于,所述单元取数函数单元还用于在所述采集表的表样的相应单元格中设置单元取数函数。7.根据权利要求1至4中任一项所述的数据处理系统,其特征在于,进一步包括采集表存储单元,连接至所述采集表展现单元,用于将来自所述采集表展现单元的数据存储至所述报表系统。8.根据权利要求7所述的数据处理系统,其特征在于,所述采集表存储单元用于根据当前设置的维度情况,将录入或计算出的指标项储存到所述报表系统,从而形成动态表。9.根据权利要求1至4中任一项所述的数据处理系统,其特征在于,进一步包括ETL引擎,连接至所述数据集单元,用于对来自所述数据集单元的数据进行清洗转换,将经过清洗转换的数据加载到数据仓库中,以供商务智能系统进行多维分析或数据挖掘。10.根据权利要求1至4中任一项所述的数据处理系统,其特征在于,所述采集表展现单元用于根据指定的维度,在设计好的相对固定的表样上,加载并计算出用户录入的数据和设置的公式,从而形成采集报表。全文摘要本发明提供了一种数据处理系统,用于实现分析报表和采集报表之间的数据再利用,包括数据集单元,用于储存来自数据提供单元的数据;数据提供单元,连接至对应于分析报表的业务系统和对应于采集报表的报表系统,用于采集业务系统和报表系统的数据,并将所采集的数据发送给数据集单元;分析表展现单元,连接至数据集单元,用于展现来自数据集单元的业务数据;数据集函数单元,连接至数据集单元,根据数据集函数从数据集单元获取数据;以及采集表展现单元,连接至数据集函数单元,用于展现来自数据集函数单元的数据。因此,通过根据本发明的数据处理系统,在分析报表与采集报表之间实现数据再利用,将产生重大的企业管理价值。文档编号G06F17/30GK101739454SQ20091024313公开日2010年6月16日申请日期2009年12月29日优先权日2009年12月29日发明者朱俊彬申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1