实现跨平台和复杂统计计算报表的方法和系统的制作方法

文档序号:6599986阅读:196来源:国知局
专利名称:实现跨平台和复杂统计计算报表的方法和系统的制作方法
技术领域
本发明涉及计算机系统的报表技术领域,尤其是在多平台情况下,通过JAVA语言而实现复杂的数据统计分析报表的方法和系统,具体而言是一种实现跨平台和复杂统计计算报表的方法和系统。
背景技术
对于一个运行于网络上的系统,用户通常希望通过报表能够迅速、直观、方便的了解整个系统的运行状况,从而评价系统的性能和运行状况;而系统性能通常是多种数据的综合,甚至很复杂;同时系统不局限于某一个平台,希望能够适用于多平台系统。因此,需要一种能够实现跨平台并能进行复杂的统计计算的报表系统。
现有的C++ Builder和Delphi报表,虽然其报表组件可以很方便地用来进行数据的报表统计输出,但因为只能在Windows平台下运行,而不能在Unix平台下运行,所以不适用于多平台系统,若在多平台系统中应用,则必须在系统中添加相应的软件和硬件,这将给用户带来成本的增加和系统维护、使用上的不便。由Sun Microsystem公司开发的JAVA语言,是一种面向对象的、简单的计算机语言,它的最大的优点就是它是一种可移植的独立于操作系统和硬件结构的语言,也就是说它可运行于现今普遍流行的Windows平台及Unix平台及其他操作平台。
但是,尽管Java可以实现跨平台,但它却没有类似C++ Builder和Delphi的报表组件,使得JAVA的可跨平台运行的优点不能在报表输出方面得到充分发挥,也使得现今的多平台系统没有实现既方便又低成本的动态、复杂的统计报表;总之,现有的报表系统不能满足实际需要。

发明内容
为克服上述现有技术的不足,本发明的目的是提供一种能够在不同平台和不同数据库情况下实现实时复杂统计计算的报表生成方法及系统。具体地说,本发明利用JAVA程序具有可跨平台运行的特性,在Java环境中,根据应用程序传递的复杂统计数据,提取传递的格式信息并生成报表格式,提取传递的数据信息,最后形成报表并显示给用户或者以文件的形式输出。
为达成上述目的,本发明的所述报表系统及方法分别按以下方案实现一种实现跨平台和复杂统计计算报表的系统,运行于JAVA环境中,包括至少一个业务应用部分、至少一个客户端、以及连接于客户端与所述业务应用部分之间的至少一个服务器端,本系统可提取运行于不同平台中的业务应用部分的相关数据并形成统计报表,其中业务应用部分,根据服务器端的请求进行统计计算,该业务应用部分包括数据库、及文件系统;客户端包括三个模块报表总控集成模块、模板定制向导模块和报表打印输出模块;其中报表总控集成模块根据用户输入的指令启动模板定制向导模块和报表打印输出模块;模板定制向导模块把报表格式信息和数据模板信息联系起来形成报表模板信息并传输至服务器端;而报表打印输出模块则进行输出报表;服务器端包括两个模块报表模板管理模块和报表输出管理模块;其中报表模板管理模块接受模板定制向导模块传来的报表模板信息,并将其中的数据模板信息添加到数据库中、报表格式信息保存到文件系统中;报表输出管理模块向业务应用部分发出提取业务数据请求,收到经业务应用部分处理过的业务数据后,再将数据传递给客户端的报表打印输出模块。
一种实现跨平台和复杂统计计算报表的方法,运行于上述的系统中,该方法可利用JAVA语言的跨平台特性,根据运行于不同平台中的业务应用部分所传递的统计数据,提取其中的格式信息形成报表格式,提取其中的数据信息形成数据模板,然后将两者一起形成报表模板,进而形成统计报表并输出报表。
其中上述方法中的形成报表模板的方法包含以下步骤步骤(201).用户选择定制报表模板用户在报表总控集成选择新建报表模板,启动模板定制向导;步骤(202).用户在报表定制向导上定制报表格式用户在模板定制向导上选择数据模板,设置报表格式信息,构造报表模板信息;步骤(203).客户端收集报表模板信息客户端从模板定制向导收集报表模板信息,该报表模板信息包括数据模板信息、报表格式信息等;步骤(204).客户端把报表模板信息传输到服务器端客户端把包括数据模板信息和报表格式信息在内的报表模板信息传递到服务器端报表模板管理;步骤(205).服务器端保存报表格式信息为报表格式文件服务器端报表模板管理把报表格式信息保存到文件系统;步骤(206).服务器端添加报表模板记录到报表数据库服务器端报表模板管理向报表数据库添加报表模板记录。
其中上述方法中的输出报表的方法包含以下步骤步骤(301).用户选择报表模板用户根据所需报表模板的名称在报表总控集成选择一个模板;步骤(302).客户端向服务器端发出请求客户端把报表模板名称作为参数传递给服务器端的报表输出管理106;步骤(303).服务器端向业务应用部分发出请求服务器端根据报表模板名称获得对应的数据模板名称,同时以此数据模板名称为参数向业务应用部分发出请求;步骤(304).业务应用部分提取并统计计算数据;步骤(305).业务应用部分向服务器端返回结果业务应用部分把计算结果以文件或者数组的形式组织成数据结果集,并传递回服务器端的报表输出管理;步骤(306).服务器端向客户端返回结果服务器端报表输出管理把数据结果集传递到客户端的报表打印输出。
本发明的实现跨平台和复杂统计计算报表的方法和系统,其最大优点是可实现跨平台运行,使得整个系统能够在不同平台和不同数据库情况下实现实时的数据检测,并形成统计报表,从而能够迅速、直观、方便的了解整个系统的运行状况,对系统的性能和运行状况进行评价。


下面将参照本发明的一个实施例及其附图详细描述本发明,附图中图1是本发明的系统方框图;图2是本发明的形成报表模板流程图;图3是本发明的输出报表流程图;图4是本发明的业务应用部分处理数据流程图。
具体实施例方式
图1显示了本发明的系统框图。该系统与至少一个业务应用部分107相连接,提取业务应用部分107的相关数据并形成统计报表,该系统包括至少一个客户端100、以及连接于客户端100与所述业务应用部分107之间的至少一个服务器端104;图1仅以一个客户端和一个服务器端为例进行说明。系统包括服务器端104和客户端100;客户端包括三个模块报表总控集成101、模板定制向导102和报表打印输出103;服务器端包括两个模块报表模板管理105和报表输出管理106。
用户在客户端通过报表总控集成101启动模板定制向导102和报表打印输出103,分别进行报表模板管理和报表输出管理。报表模板管理的工作过程用户在模板定制向导102定制报表格式,把报表格式信息和数据模板联系起来形成一个报表模板,服务器端的报表模板管理105添加报表模板记录到数据库108,并把报表模板格式文件保存到文件系统109中。输出报表的工作过程用户选择报表模板并输入参数信息,客户端报表打印输出103收集报表模板及参数信息,同时向服务器端的报表输出管理106发出输出报表请求,服务器端从数据库108取出数据模板并从文件系统109提取报表格式文件,然后通过报表输出管理106向业务应用部分107发出请求,业务应用部分107根据数据模板和输入参数信息进行数据处理并返回报表输出管理106,报表输出管理106返回数据到客户端报表打印输出103,报表打印输出103合成报表并进行输出。
图2是本发明的形成报表模板流程图。
用户选择定制报表模板201用户在报表总控集成101选择新建报表模板,启动模板定制向导102;用户在报表定制向导上定制报表格式202用户在模板定制向导102上选择数据模板,设置报表格式信息,构造报表模板信息;客户端收集报表模板信息203客户端从模板定制向导102收集报表模板信息,该报表模板信息包括数据模板信息、报表格式信息等;客户端把报表模板信息传输到服务器端204客户端把包括数据模板信息和报表格式信息在内的报表模板信息传递到服务器端报表模板管理105;服务器端保存报表格式信息为报表格式文件205服务器端报表模板管理105把报表格式信息以XML文件的形式保存到文件系统109;
服务器端添加报表模板记录到报表数据库206服务器端报表模板管理105向报表数据库108添加报表模板记录,包括报表模板名称、数据模板名称和报表格式信息名称(文件名称)。
图3显示了本发明的输出报表流程图。
用户选择报表模板301用户在报表总控集成101选择需要的模板,每一种模板具有各自特定的报表模板名称;客户端向服务器端发出请求302客户端把报表模板名称作为参数传递给服务器端的报表输出管理106;服务器端向业务应用部分发出请求303服务器端根据报表模板名称获得对应的数据模板名称,同时以此数据模板名称为参数向业务应用部分107发出请求;业务应用部分提取并统计计算数据304业务应用部分107根据数据模板名称,结合该数据模板的输入参数从数据库提取原始数据,并根据四则运算和统计函数等进行统计计算;关于这部分的运算流程详见下面对图4的描述。
业务应用部分向服务器端返回结果305业务应用部分107把计算结果以文件或者数组的形式组织成数据结果集,并传递回服务器端的报表输出管理106;服务器端向客户端返回结果306服务器端报表输出管理106把数据结果集传递到客户端的报表打印输出103;客户端合成报表307客户端的报表打印输出103根据返回的格式信息和报表格式信息生成报表格式文件,结合报表数据在客户端形成报表。
图4是本发明的业务应用部分处理数据流程图。
获得数据模板名称及输入参数值401业务应用部分107从报表输出管理106获得数据模板名称及其输入参数值;定位数据模板对应的存储过程402业务应用部分107根据数据模板定位存储过程,并把数据模板的输入参数值传递给存储过程;存储过程提取满足条件的原始数据403存储过程根据输入参数值从数据库提取符合条件的原始数据;存储过程对原始数据进行四则运算和统计计算404存储过程对原始数据进行四则运算,并利用统计函数进行统计计算,得到统计数据;存储过程把处理过的统计数据保存到数据库表405存储过程把统计数据保存到数据库对应数据表中;应用程序查询并获得数据406应用程序查询该数据表获得结果数据集,该结果数据集的形式是文件或者数组;应用程序部分把数据传递给报表服务器407业务应用部分107把数据结果集传递到报表服务器端的报表输出管理106。
权利要求
1.一种实现跨平台和复杂统计计算报表的系统,运行于JAVA环境中,包括至少一个业务应用部分(107)、至少一个客户端(100)、以及连接于客户端(100)与所述业务应用部分(107)之间的至少一个服务器端(104),本系统可提取运行于不同平台中的业务应用部分(107)的相关数据并形成统计报表,其特征是业务应用部分(107),根据服务器端(104)的请求和传入的参数信息从数据库提取原始数据库,并对原始数据进行统计计算;客户端(100)包括三个模块报表总控集成模块(101)、模板定制向导模块(102)和报表打印输出模块(103);其中报表总控集成模块(101)根据用户输入的指令启动模板定制向导模块(102)和报表打印输出模块(103);模板定制向导模块(102)把报表格式信息和数据模板信息联系起来形成报表模板信息并传输至服务器端(104);而报表打印输出模块(103)则进行输出报表;服务器端(104)包括两个模块报表模板管理模块(105)和报表输出管理模块(106);其中报表模板管理模块(105)接受模板定制向导模块(102)传来的报表模板信息,并将其中的数据模板信息添加到数据库(108)中、报表格式信息保存到文件系统(109)中;报表输出管理模块(106)向业务应用部分(107)发出提取业务数据请求,收到经业务应用部分(107)处理过的业务数据后,再将数据传递给客户端(100)的报表打印输出模块(103)。
2.如权利要求1所述的系统,其特征是模板定制向导模块(102)所形成的报表模板信息、及其所包含的报表格式信息和数据模板信息分别具有各自特定的名称。
3.如权利要求2所述的系统,其特征是所述报表格式信息为XML文件的形式。
4.一种实现跨平台和复杂统计计算报表的方法,运行于如权利要求1所述的系统中,其特征是该方法可利用JAVA语言的跨平台特性,报表系统运行于不同平台,根据选择的报表模板及输入参数信息从业务应用部分(107)提取统计数据,将报表格式信息和数据信息合成一体形成报表,进而进行输出报表。
5.如权利要求4所述的方法,其特征是所述报表系统和业务应用部分(107)运行于Windows平台、或Unix平台。
6.如权利要求4所述的方法,其特征是该形成报表模板的方法包含以下步骤步骤(201).用户选择定制报表模板用户在报表总控集成(101)选择新建报表模板,启动模板定制向导(102);步骤(202).用户在报表定制向导上定制报表格式用户在模板定制向导(102)上选择数据模板,设置报表格式信息,构造报表模板信息;步骤(203).客户端(100)收集报表模板信息客户端(100)从模板定制向导(102)收集报表模板信息,该报表模板信息包括数据模板信息、报表格式信息等;步骤(204).客户端(100)把报表模板信息传输到服务器端(104)客户端(100)把包括数据模板信息和报表格式信息在内的报表模板信息传递到服务器端(104)报表模板管理(105);步骤(205).服务器端(104)保存报表格式信息为报表格式文件服务器端(104)报表模板管理(105)把报表格式信息保存到文件系统(109);步骤(206).服务器端(104)添加报表模板记录到报表数据库服务器端(104)报表模板管理(105)向报表数据库(108)添加报表模板记录。
7.如权利要求6所述的方法,其特征是步骤(205)中的报表格式信息为XML文件的形式。
8.如权利要求6所述的方法,其特征是步骤(206)中的报表模板记录包括报表模板名称、数据模板名称和报表格式信息名称。
9.如权利要求4所述的方法,其特征是该输出报表的方法包含以下步骤步骤(301).用户选择报表模板用户根据所需报表模板的名称在报表总控集成(101)选择一个模板;步骤(302).客户端(100)向服务器端(104)发出请求客户端(100)把报表模板名称作为参数传递给服务器端(104)的报表输出管理106;步骤(303).服务器端(104)向业务应用部分(107)发出请求服务器端(104)根据报表模板名称获得对应的数据模板名称,同时以此数据模板名称为参数向业务应用部分(107)发出请求;步骤(304).业务应用部分(107)提取并统计计算数据;步骤(305).业务应用部分(107)向服务器端(104)返回结果业务应用部分(107)把计算结果以文件或者数组的形式组织成数据结果集,并传递回服务器端(104)的报表输出管理(106);步骤(306).服务器端(104)向客户端(100)返回结果服务器端(104)报表输出管理(106)把数据结果集传递到客户端(100)的报表打印输出(103)。
10.如权利要求9所述的方法,其特征是步骤(304)进一步包括以下步骤步骤(401).获得数据模板名称及输入参数值业务应用部分(107)从报表输出管理(106)获得数据模板名称及其输入参数值;步骤(402).定位数据模板对应的存储过程业务应用部分(107)根据数据模板定位存储过程,并把数据模板的输入参数值传递给存储过程;步骤(403).存储过程提取满足条件的原始数据存储过程根据输入参数值从数据库提取符合条件的原始数据;步骤(404).存储过程对原始数据进行四则运算和统计计算存储过程对原始数据进行四则运算,并利用统计函数进行统计计算,得到统计数据;步骤(405).存储过程把处理过的统计数据保存到数据库表存储过程把统计数据保存到数据库中对应的数据表中;步骤(406).应用程序查询并获得数据应用程序查询该数据表获得结果数据集,该结果数据集的形式是文件或者数组;步骤(407).应用程序部分把数据传递给报表服务器业务应用部分(107)把数据结果集传递到报表服务器端的报表输出管理(106)。
全文摘要
一种实现跨平台和复杂统计计算报表的方法和系统,该系统运行于JAVA环境中,包括至少一个业务应用部分、至少一个客户端、以及连接于客户端与所述业务应用部分之间的至少一个服务器端,本系统可提取运行于不同平台中的业务应用部分的相关数据并形成统计报表;本发明的方法可利用JAVA语言的跨平台特性,根据运行于不同平台中的业务应用部分所传递的统计数据,提取其中的格式信息形成报表格式,提取其中的数据信息形成数据模板,然后将两者一起形成报表模板,进而形成统计报表并输出报表;本发明的最大优点是可实现跨平台运行,使得整个系统能够在不同平台和不同数据库情况下实现实时的数据检测,并形成统计报表,从而能够迅速、直观、方便的了解整个系统的运行状况,对系统的性能和运行状况进行评价。
文档编号G06F9/45GK1504879SQ0215112
公开日2004年6月16日 申请日期2002年12月2日 优先权日2002年12月2日
发明者黄远文 申请人:深圳市中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1