一种报表生成方法及系统的制作方法
【技术领域】
[0001]本发明涉及报表相关技术领域,特别是一种报表生成方法及系统。
【背景技术】
[0002]现有的报表采用如下方法步骤生成:
[0003](I)根据需要的报表类型编写相对应的报表处理程序。
[0004](2)在处理程序中处理报表所需数据,并转化为报表渲染数据。
[0005](3)由各个类型报表展示页面进行报表展示。
[0006]因此现有技术报表程序设计与报表业务数据耦合性较高,需要根据报表需求类型编写相应报表处理程序的过程,不具有通用性。
【发明内容】
[0007]基于此,有必要针对现有技术报表生成程序与报表业务数据耦合性较高,不具有通用性的技术问题,提供一种报表生成方法及系统。
[0008]一种报表生成方法,包括:
[0009]搜索获取步骤,包括:获取用户所选定的报表类型作为报表选定类型;
[0010]模板获取步骤,包括:从报表模板库中选择所述报表选定类型对应的报表模板,所述报表模板定义数据源和展示方式;
[0011]数据维度获取步骤,包括:获取用户所选择的数据范围;
[0012]数据抽取步骤,包括:从所述报表模板所定义的数据源中,抽取所述数据范围内的数据作为待显示数据;
[0013]数据展示步骤,包括:将所述待展示数据根据所述报表模板所定义的展示方式进行展示。
[0014]—种报表生成系统,包括:
[0015]搜索获取模块,用于:获取用户所选定的报表类型作为报表选定类型;
[0016]模板获取模块,用于:从报表模板库中选择所述报表选定类型对应的报表模板,所述报表模板定义数据源和展示方式;
[0017]数据维度获取模块,用于:获取用户所选择的数据范围;
[0018]数据抽取模块,用于:从所述报表模板所定义的数据源中,抽取所述数据范围内的数据作为待显示数据;
[0019]数据展示模块,用于:将所述待展示数据根据所述报表模板所定义的展示方式进行展示。
[0020]本发明将报表生成程序和报表业务数据完全解耦,将报表业务展示数据配置标准化,并设计通用报表数据搜索引擎,提供统一的报表定义规范,用户只需要根据不同的数据源及展示方式生成特定的报表模板,则能达到不同业务报表通用一套报表框架的目的,降低报表设计的复杂度和提升报表设计效率。
【附图说明】
[0021]图1为本发明一种报表生成方法的工作流程图;
[0022]图2为本发明最佳实施例的系统架构模型图;
[0023]图3为本发明最佳实施例的工作流程图;
[0024]图4为本发明一种报表生成系统的结构模块图。
【具体实施方式】
[0025]下面结合附图和具体实施例对本发明做进一步详细的说明。
[0026]如图1所示为本发明一种报表生成方法的工作流程图,包括:
[0027]步骤S101,包括:获取用户所选定的报表类型作为报表选定类型;
[0028]步骤S102,包括:从报表模板库中选择所述报表选定类型对应的报表模板,所述报表模板定义数据源和展示方式;
[0029]步骤S103,包括:获取用户所选择的数据范围;
[0030]步骤S104,包括:从所述报表模板所定义的数据源中,抽取所述数据范围内的数据作为待显示数据;
[0031]步骤S105,包括:将所述待展示数据根据所述报表模板所定义的展示方式进行展不O
[0032]步骤SlOl和步骤S103,优选地通过web网页的方式,让用户选定报表类型和数据范围。
[0033]步骤S102,根据报表类型选择对应的报表模板,该对应关系由系统预先设定。在步骤S104中,根据步骤S102所得到的报表模板,查找合适的数据源,并从中抽取由步骤S103所选定的数据范围内的数据,交由步骤S105进行展示。
[0034]本发明将数据源中的数据和报表模板进行数据整合,输出标准的报表展示数据对象,并将这些标准展示对象输入至web报表框架进行报表展示,方便传播和交流。
[0035]本发明将报表生成程序和报表业务数据完全解耦,将报表业务展示数据配置标准化,并设计通用报表数据搜索引擎,提供统一的报表定义规范,用户只需要根据不同的数据源及展示方式生成特定的报表模板,则能达到不同业务报表通用一套报表框架的目的,降低报表设计的复杂度和提升报表设计效率。
[0036]在其中一个实施例中:所述数据源包括保存结构化数据的结构化数据源和/或保存非结构化数据的非结构化数据源;
[0037]所述步骤S104,具体包括:
[0038]如果所述数据源为结构化数据源,则抽取所述数据范围内的结构化数据为待显示数据;
[0039]如果所述数据源为非结构化数据源,则对所述数据范围内的所述非结构化数据执行结构化重构,得到结构化的重构数据,抽取所述重构数据作为待显示数据。
[0040]结构化数据指数据库中以行为单位存储的数据,可以用二维表进行方便的展示和表达,非结构化化数据是指不方便用二维表表达的数据,例如文档、图片、视频等。本实施例采用结构化数据方法实现对结构化数据和非结构化数据进行统一的结构标准化。对于结构化数据源,可以在报表模板中保存XML标准配置模板,解析模板中的SQL (Structured QueryLanguage结构化查询语言)语句进行数据抽取,而非结构化数据源的数据,则可以通过调用自定义java类进行数据抽取。
[0041]优选地,所述结构化重构具体包括:
[0042]计算所述数据范围内的非结构化数据关于所述指标的指标值,将所述指标值作为所述重构数据。
[0043]优选地,指标用于指示非结构化数据基于不同维度、不同时间段的数量、频率、大小等参数。
[0044]在其中一个实施例中,所述步骤S103,具体包括:
[0045]显示与所述报表选定类型相关的可选择数据维度,获取在所述可选择数据维度内所选择的数据范围,其中:
[0046]所述可选择数据维度从预设的与所述报表选定类型相关的配置文件中确定,或者;
[0047]所述可选择数据维度由所述报表模板确定。
[0048]可选择数据维度是指允许用户进行选择的维度,根据不同的报表类型或报表模板,可以有不同的可选择数据维度。
[0049]如果所述可选择数据维度由配置文件确定,则步骤S102和步骤S103可以互换。
[0050]如果可选择数据维度由报表模板确定,则在步骤S102获取报表模板后,确定其可选择数据维度,优选地,将会在web网页上进行更新。
[0051]在其中一个实施例中,所述步骤S105,具体包括:
[0052]如果所述报表模板所定义的展示方式为表格显示,则调用表格绘制引擎将所述待显示数据采用所述展示方式进行显示;
[0053]如果所述报表模板所定义的展示方式为图形显示,则调用图形绘制引擎将所述待显示数据采用所述展示方式进行显示。
[0054]如图2所示为本发明最佳实施例的系统架构模型图,web统一搜索展示框架21、通用报表引擎22、报表模板库23、图形绘制引擎24和数据库25,具体来说:
[0055](l)web统一搜索展示框架21
[0056]功能:报表数据统一格式展示。
[0057]设计方案:采用报表类型列表+搜索区+表格展示区+图形展示区的框架结构,搜索区211支持多维度的数据查询定义,可根据不同的报表类型定义不同的搜索标签,表格展示区212展示表格数据,图形展示区213展示图形数据。
[0058](2)通用报表引擎22
[0059]功能:
[0060]1、解析web统一搜索展示框架的输入查询条件,进行数据源定位与调用。
[0061 ] 2、执行数据抽取操作,并将抽取后的数据重构为标准的报表数据对象。
[0062]3、内置表格数据自动绘制引擎和openChart图形报表引擎,将标准化报表对象数据转化为表格和图形数据展示对象并输出至web统一搜索展示框架进行表格和图形展示,并支持其他报表引擎的接入。
[0063]设计方案:采用统一的报表访问入口 221,将接收到的对不同数据源的调用请求分发至不同的数据处理通道,对于报表模板数据源的请求,通过报表模板定位模块222从报表模板库中获取与报表类型相关的报表模板,并对模板进行解析,由数据源解析模块223从报表模板中解析出具体的数据源发送到数据抽取模块224,数据抽取模块224根据模板配置以及报表访问入口 221传入的数据范围从数据库25中进行数据抽取。数据库25中的数据包括结构化数据和非结构化数据,对于非结构化数据,调用自定义数据接口 225进行数据抽取,通过表格绘制引擎226和图形绘制引擎接入模块227对抽取的数据进行数据标准化,并将标准化的数据传至web统一搜索展示框架21的表格展示区212和图形展示区213进行统一展示,图形绘制引擎接入模块227调用图形绘制引擎24对数据进行图形绘制。
[0064](3)报表模板库23
[0065]功能:配置报表表格展示格式、图形展示类型和SQL数据源。
[0066]设计方案:采用XML (Extensible Markup Langua