一种web智能报表的实现方法和系统的制作方法

文档序号:6444946阅读:283来源:国知局
专利名称:一种web智能报表的实现方法和系统的制作方法
技术领域
本发明涉及计算机技术领域,特别涉及一种TOB智能报表的实现方法和系统。
背景技术
说到报表,相信大家不会觉得陌生,它是企业管理的基本措施和途径,是企业的基本业务要求,也是实施BI战略的基础。报表可以帮助企业访问、格式化数据,并把数据信息以可靠和安全的方式呈现给使用者,使企业管理者可以深入地洞察企业的运营情况。对现代企业有着如此重要的表单在计算机还没有出现以前,说白了就是账本子。当时人们是用笔和纸来记录数据的,就如老百姓所说的豆腐帐,就是卖豆腐的人每天将自己的卖出的豆腐记在一个本子上,然后每月进行汇总算算。这种情况下,报表数据和报表格式是紧密结合在一起的,都在同一个本子上。但是这种早期报表的表现形式基本上只有记账的人才能理解,且这种形式难以修改。而在计算机出现之后,人们开始利用计算机处理数据和界面设计的功能来生成、展示报表。运用CEL、W0RD等编辑软件可以做出很复杂的报表格式,但是由于它们没有定义专门的报表结构来动态的加载报表数据,所有这类软件中的数据都是已经定义好的,静态的,没有办法实现报表软件的“数据动态化”特性。而利用数据库相关的软件,虽然可以拥有动态变化的数据,但是这类软件表格的形式十分简单、单调,不能达到格式多样化。上面两类软件的运用和“早期帐本子报表”相比,虽然有了很大的进步,但是仍然不能满足报表动态化和格式多样化的需求。

发明内容
本发明提供了一种WEB智能报表的实现方法和系统,本发明的技术方案中的报表的创建方式更加多元化,能够满足报表动态化和格式多样化的需求,同时由于采用了 B/S结构能够实现一次编译,处处运行,提供了强大的安全机制,稳定和可靠性强,具有跨平台的优势。为达到上述目的,本发明的技术方案是这样实现的本发明公开了一种TOB智能报表的实现方法,该方法包括浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据;当用户选择SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据请求中SQL语句中的信息从所述数据库中查询出满足查询条件的数据;
服务器根据所查询出的数据创建报表,并通过自定义标签库将所述创建的报表显示在浏览器上。在上述方法中,所述数据库中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,所述事实表和维度表中的列的字段与检索字段关联。在上述方法中,所述预设查询条件与SQL参数对应关联;或所述预设查询条件为所述检索字段;当所述预设查询条件与SQL参数对应关联时,所述根据所述预设查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据包括将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从所述数据库中查询出满足查询条件的数据;当所述所有预设查询条件是所述检索字段时,所述根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据包括根据选择的检索字段,生成SQL语句从所述数据库中查询出满足查询条件的数据。在上述方法中,所述服务器通过自定义标签库将所述创建的报表显示在浏览器上包括通过eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/ 或,通过bi标签库对所述查询出的数据进行分页,并将所述数据以图表的形式展现。在上述方法中,在报表创建完成前,该方法进一步包括判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。在上述方法中,所述服务器通过自定义标签库将所述创建的报表显示在浏览器上后,该方法进一步包括浏览器响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。本发明还公开了一种TOB智能报表的实现系统,该系统包括浏览器,用于在接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面;当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库的请求并发送给服务器;当用户选择 SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器,并显示服务器所创建的报表;服务器,用于在接收到来自浏览器的访问数据库请求时,当用户选择的是向导创建方式界面时,根据查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据,当用户选择的是SQL创建方式界面时,根据请求中SQL语句中的信息从所述数据库中查询出满足查询条件的数据;并根据所查询出的数据创建报表,通过自定义标签库将所述创建的报表显示在浏览器上;数据库,用于存储数据。在上述系统中,所述数据库中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,所述事实表和维度表中的列的字段与检索字段关联。在上述系统中,所述预设查询条件与SQL参数对应关联;或所述预设查询条件为所述检索字段;所述服务器,用于当所述预设查询条件与SQL参数对应关联时,将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从所述数据库中查询出满足查询条件的数据;当所述所有预设查询条件是所述检索字段时,根据选择的检索字段,生成SQL语句从所述数据库中查询出满足查询条件的数据。在上述系统中,所述服务器,用于通过eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/或,通过bi标签库对所述查询出的数据进行分页,并将所述数据以图表的形式展现;所述服务器,进一步用于在报表创建完成前,判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。所述浏览器,进一步用于在所述服务器通过自定义标签库将所述创建的报表显示在浏览器上后响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。综上可见,本发明采用了 B/S架构,浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面,用户能够根据自己的需要采用不同的智能报表创建方式来创建报表,其主要事务逻辑在服务器,等待浏览器的请求,调用服务器的功能,给用户展示数据,并响应用户的操作。核心数据和逻辑由服务器统一管理,浏览器主要做展示和交互。本技术方案能够实现一次编译,处处运行,提供了强大的安全机制,稳定和可靠性强, 具有跨平台的优势。


图1是本发明实施例中TOB智能报表的实现系统方法的流程图;图2是本发明实施例中WEB智能报表的实现系统的系统框图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。在本发明的技术方案中,图1是本发明实施例中WEB智能报表的实现系方法的流程图,如图1所示,WEB智能报表的实现方法具体包括101,浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面,当用户选择向导创建方式界面时,进入步骤102 ;当用户选择SQL创建方式界面时, 进入步骤103 ;102,当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据,进入步骤104 ;103,当用户选择SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据请求中SQL语句中的信息从所述数据库中查询出满足查询条件的数据,进入步骤104 ;104,服务器根据所查询出的数据创建报表,并通过自定义标签库将所述创建的报表显示在浏览器上。本发明的技术方案中的报表的创建方式更加多元化,同时由于采用了 B/S架构, 浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面,用户能够根据自己的需要采用不同的智能报表创建方式来创建报表,其主要事务逻辑在服务器,等待浏览器的请求,调用服务器的功能,给用户展示数据,并响应用户的操作。核心数据和逻辑由服务器统一管理,浏览器主要做展示和交互。本技术方案能够实现一次编译,处处运行,提供了强大的安全机制,稳定和可靠性强,具有跨平台的优势。其中,数据库中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,该事实表和维度表中的列的字段与检索字段关联。向导创建以拖拽的方式,灵活的根据事实表与维度表来满足用户的需求,并能根据相关需求将参数进行关联查询。预设查询条件的设置方式可采用下述两种方式的任一种预设查询条件与SQL参数对应关联;或预设查询条件为所述检索字段。根据在构建向导创建功能时,根据所有可选择的预设条件的设置方式的不同,采用不同的方式来实现根据所述预设查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据,具体如下当所述预设查询条件与SQL参数对应关联时,将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从所述数据库中查询出满足查询条件的数据。比如一个预设查询条件为“省份”,另一个预设查询条件“地市”,则可以通过配置SQL参数设置与“省份”关联,例如当省份选择为重庆时,则选择地市时值为重庆下的地市值,如长寿,万盛等等,当所述所有预设查询条件是所述检索字段时,根据选择的检索字段,生成SQL语句从所述数据库中查询出满足查询条件的数据。SQL创建方式以固定的SQL语句执行查询,要用到的参数可以以’ $ {检索字段名字}’的方式进行设置,否则就直接默认为手动输入值。同时,本发明的技术方案通过采用自定义标签库来显示创建的报表,能够满足报表动态化和格式多样化的需求。自定义标签库,也称JSP标签库,可看成是一种通过 JavaBean生成基于XML的脚本的方法。从概念上讲,标签就是很简单而且可重用的代码结构。其重要特性(1).易于安装在多个项目上;(2).可以无限制地扩展和增加JSP 的功能;(3).容易维护;(4).快速的开发时间。其中,ec与bi,ec标签库用于以表格的形式展现数据,并可以实现下钻,bi标签库用于对数据的图表的展示。因此,可通过 eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/或,通过bi标签库对所述查询出的数据进行分页,并将所述数据以图表的形式展现。在报表创建完成前,该方法进一步包括判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。服务器通过自定义标签库将所述创建的报表显示在浏览器上后,该方法进一步包括浏览器响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。图2是本发明实施例中WEB智能报表的实现系统的系统框图,如图2所示,该系统包括浏览器201、服务器202和数据库203 ;浏览器201,用于在接收到用户报表请求时,向用户提供向导创建方式界面和SQL 创建方式界面;当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库203的请求并发送给服务器202 ;当用户选择SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器202,并显示服务器202所创建的报表;服务器202,用于在接收到访问数据库203的请求时,当用户选择的是向导创建方式界面时,根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据,当用户选择的是SQL创建方式界面时,根据请求中SQL语句中的信息从所述数据库203中查询出满足查询条件的数据;并根据所查询出的数据创建报表,并通过自定义标签库将所述创建的报表显示在浏览器201上 数据库203,用于存储数据。数据库203中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,该事实表和维度表中的列的字段与检索字段关联。其中,预设查询条件与SQL参数对应关联;或预设查询条件为上述检索字段;服务器202,用于当预设查询条件与SQL参数对应关联时,将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从数据库203中查询出满足查询条件的数据;当所有预设查询条件是上述检索字段时,根据选择的检索字段,生成SQL语句从数据库103中查询出满足查询条件的数据。服务器202,用于通过eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/或,通过bi标签库对所述查询出的数据进行分页,并将该数据以图表的形式展现;服务器202,进一步用于在报表创建完成前,判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。浏览器201,进一步用于在服务器202通过自定义标签库将所述创建的报表显示在浏览器201上后响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。综上所述,本发明采用了 B/S架构,浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面,用户能够根据自己的需要采用不同的智能报表创建方式来创建报表,能够实现报表创建方式的多元化。其主要事务逻辑在服务器,等待浏览器的请求,调用服务器的功能,通过自定义标签库给用户展示数据,并响应用户的操作,能够满足报表动态化和格式多样化的需求,同时由于采用了 B/S结构能够实现一次编译,处处运行,提供了强大的安全机制,稳定和可靠性强,具有跨平台的优势。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
权利要求
1.一种WEB智能报表的实现方法,其特征在于,该方法包括浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面;当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据;当用户选择SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器;接收到访问数据库的请求的服务器,根据请求中SQL语句中的信息从所述数据库中查询出满足查询条件的数据;服务器根据所查询出的数据创建报表,并通过自定义标签库将所述创建的报表显示在浏览器上。
2.根据权利要求1所述的方法,其特征在于,所述数据库中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,所述事实表和维度表中的列的字段与检索字段关联。
3.根据权利要求2所述的方法,其特征在于,所述预设查询条件与SQL参数对应关联;或所述预设查询条件为所述检索字段;当所述预设查询条件与SQL参数对应关联时,所述根据所述预设查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据包括将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从所述数据库中查询出满足查询条件的数据;当所述所有预设查询条件是所述检索字段时,所述根据所述查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据包括根据选择的检索字段,生成SQL语句从所述数据库中查询出满足查询条件的数据。
4.根据权利要求1所述的方法,其特征在于,所述服务器通过自定义标签库将所述创建的报表显示在浏览器上包括通过eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/或,通过bi标签库对所述查询出的数据进行分页,并将所述数据以图表的形式展现。
5.根据权利要求1所述的方法,其特征在于,在报表创建完成前,该方法进一步包括判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。
6.根据权利要求1所述的方法,其特征在于,所述服务器通过自定义标签库将所述创建的报表显示在浏览器上后,该方法进一步包括浏览器响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。
7.—种TOB智能报表的实现系统,其特征在于,该系统包括浏览器、服务器和数据库;所述浏览器,用于在接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面;当用户选择向导创建方式界面时,交互地接收用户从所有预设查询条件中选择的查询条件对应的参数,用该参数生成访问数据库的请求并发送给服务器;当用户选择SQL创建方式界面时,交互地接收用户设置的SQL语句,用所接收的SQL语句生成访问数据库的请求并发送给服务器,并显示服务器所创建的报表;所述服务器,用于在接收到来自浏览器的访问数据库请求时,当用户选择的是向导创建方式界面时,根据查询条件对应的参数,生成SQL语句从所述数据库中查询出满足查询条件的数据,当用户选择的是SQL创建方式界面时,根据请求中SQL语句中的信息从所述数据库中查询出满足查询条件的数据;并根据所查询出的数据创建报表,通过自定义标签库将所述创建的报表显示在浏览器上;所述数据库,用于存储数据。
8.根据权利要求7所述的系统,其特征在于,所述数据库中的数据以事实表和维度表的形式存在,并且事实表和维度表中数据设置了下钻关系,所述事实表和维度表中的列的字段与检索字段关联。
9.根据权利要求7所述的系统,其特征在于,所述预设查询条件与SQL参数对应关联;或所述预设查询条件为所述检索字段;所述服务器,用于当所述预设查询条件与SQL参数对应关联时,将从所有预设查询条件中选择的查询条件对应的参数与相应的SQL参数进行关联,生成SQL语句从所述数据库中查询出满足查询条件的数据;当所述所有预设查询条件是所述检索字段时,根据选择的检索字段,生成SQL语句从所述数据库中查询出满足查询条件的数据。
10.根据权利要求7所述的系统,其特征在于,所述服务器,用于通过eXtremeComponents标签库将所述查询出的数据以表格的形式展现;和/或,通过bi标签库对所述查询出的数据进行分页,并将所述数据以图表的形式展现;所述服务器,进一步用于在报表创建完成前,判断生成的SQL语句是否正确,并将判断的结果信息返回到浏览器页面上。所述浏览器,进一步用于在所述服务器通过自定义标签库将所述创建的报表显示在浏览器上后响应用户的操作,对所述创建的报表进行汇总、数据输出或屏蔽列。
全文摘要
本发明公开一种WEB智能报表的实现方法和系统,该方法包括浏览器接收到用户报表请求时,向用户提供向导创建方式界面和SQL创建方式界面;服务器根据用户选择的不同的创建方式来确定不同的方式从数据库中查询出满足查询条件的数据,根据所查询出的数据创建报表,并通过自定义标签库将所述创建的报表显示在浏览器上。本发明的技术方案中的报表的创建方式更加多元化,能够满足报表动态化和格式多样化的需求,同时由于采用了B/S结构能够实现一次编译,处处运行,提供了强大的安全机制,稳定和可靠性强,具有跨平台的优势。
文档编号G06F17/30GK102567539SQ20111046049
公开日2012年7月11日 申请日期2011年12月31日 优先权日2011年12月31日
发明者聂斌 申请人:北京新媒传信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1