数据报表生成方法及其装置制造方法及图纸

技术编号:8907118 阅读:137 留言:0更新日期:2013-07-11 04:47
本发明专利技术公开了数据报表生成方法及其装置,该方法包括:获取用于生成用户请求的数据报表的查询语句;确定该查询语句中包含的关联元素、数据表标识元素和展现元素;生成分别对应各关联元素、数据表标识元素和展现元素的数据提取属性信息,数据提取属性信息中包含权重分值;按照生成的各数据提取属性信息在生成数据报表的过程中,若出现不能提取到至少一个展现元素对应的数据时,根据各数据提取属性信息中分别包含的权重分值,确定数据报表在缺省不能提取到对应数据的展现元素时具有的容错度值大于设定阈值时,生成缺省的展现元素的数据报表。该方案可生成不包含缺省展现元素的数据报表,及时、准确地定位不能生成所需数据报表的故障原因。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤指一种数据报表生成方法及其装置
技术介绍
自助数据报表一般基于数据库中的数据,通过需求不同对数据分析提取后进行展现,在用户侧展现的一般为数据报表形式,而后台则为数据库操作语言,二者的关系如图1所示,图中左边的表格为展现的数据报表形式,右边的表格为后台操作语言。自助数据报表具有很高的自主性和灵活性,数据展现实效性高、直观明了,用户不需要掌握复杂语言就可以获得直观的数据,深受各个分析部门的青睐。自助数据报表一般分为两部分:一部分设置展现模板结构,另一部分进行数据库中数据的提取,并将提取的数据按照设置的展现模板结构进行展现。下面以一个具体实例来说明数据报表的生成过程:假设用户需要包含A1、A2、B3、B4和C4数据的自主数据报表,该自助数据报表所需的数据存储在数据库中,包括表么、8、(:,其中,表4包括4132、4334,表8包括81、82、83、B4,表C包括Cl、C2、C3、C4,在数据报表中需展现Al、A2、B3、B4和C4的信息,其结构化查询语言(Structured Query Language, SQL)语句可以写为:Select Al, A2, B3, B4, C4 FromA, B,C Where Al = BI And Al = Cl,自助数据报表系统根据该SQL语句取出数据后,向用户展现如图2所示的数据报表结构,而该SQL语句会被存储在数据库中;当用户再次使用该数据报表时,后台直接调用该SQL语句在数据库中取出数据后即可生成报表,但是必须保证表A、B、C均存在数据库中,且Al、B1、Cl、A2、B3、B4、C4分别存在于表A、B、C中,当任一个表或者表中的某一数据不存在时,则整个数据报表就无法正常使用。因此,现有的自助数据报表生成方案中随着数据的增多,数据来源之间的关联性增强,常常会由于某一个数据来源的数据结构发生变化后,导致一个或多个报表无法展现,并且由于存储结构的复杂化,使得对自助数据报表系统的维护和故障排除的难度增大。
技术实现思路
本专利技术实施例提供一种数据报表生成方法及其装置,用以解决现有技术中存在的当某一个数据来源的数据结构发生变化导致的无法展现数据报表以及对数据报表系统的维护和故障排除难度较大的问题。本专利技术实施例的具体方案包括:一种数据报表生成方法,包括获取用于生成用户请求的数据报表的查询语句;确定获取的所述查询语句中包含的关联元素、数据表标识元素和展现元素,所述关联元素与所述查询语句中包含的数据表标识元素对应的数据表中的元素存在关联关系,所述展现元素为用户请求的数据报表中需要展现的元素,所述展现元素对应的数据和关联元素对应的数据是从所述数据表标识元素对应的数据表中提取的;生成分别对应确定的各关联元素、数据表标识元素和展现元素的数据提取属性信息,所述数据提取属性信息中包含权重分值,用于表征对应的元素在数据报表中的重要程度;按照生成的各数据提取属性信息在生成数据报表的过程中,若出现不能提取到至少一个展现元素对应的数据时,根据各数据提取属性信息中分别包含的权重分值,确定所述数据报表在缺省不能提取到对应数据的展现元素时具有的容错度值;在确定的容错度值大于设定阈值时,生成缺省不能提取到对应数据的展现元素的数据报表。一种数据报表生成装置,包括查询语句获取单元,用于获取用于生成用户请求的数据报表的查询语句;元素确定单元,用于确定获取的所述查询语句中包含的关联元素、数据表标识元素和展现元素,所述关联元素与所述查询语句中包含的数据表标识元素对应的数据表中的元素存在关联关系,所述展现元素为用户请求的数据报表中需要展现的元素,所述展现元素对应的数据和关联元素对应的数据是从所述数据表标识元素对应的数据表中提取的;提取属性信息生成单元,用于生成分别对应确定的各关联元素、数据表标识元素和展现元素的数据提取属性信息,所述数据提取属性信息中包含权重分值,用于表征对应的元素在数据报表中的重要程度;容错度值确定单元,用于按照生成的各数据提取属性信息在生成数据报表的过程中,若出现不能提取到至少一个展现元素对应的数据时,根据各数据提取属性信息中分别包含的权重分值,确定所述数据报表在缺省不能提取到对应数据的展现元素时具有的容错度值;报表生成单元,用于在确定的容错度值大于设定阈值时,生成缺省不能提取到对应数据的展现元素的数据报表。本专利技术实施例提供的数据报表生成方法及其装置,通过生成获取的查询语句中包含的关联元素、数据表标识元素和展现元素的数据提取属性信息,在生成数据报表的过程中,如果数据报表所需的展现元素缺省,就可以计算出该数据报表的容错度,当该容错度大于设定阈值时,生成不包含缺省展现元素的数据报表,由于在数据报表中没有展现缺省的展现元素,就可以确定该缺省的展现元素对应的数据所在的数据来源的数据结构发生了变化,从而可以对该缺省的展现元素对应的数据所在的数据来源进行维护和故障排除;该方案中即使所需的展现元素对应的数据所在的数据来源的数据结构发生了变化,仍然可以生成不包含该缺省的展现元素的数据报表,并可以及时、准确地定位不能生成所需的数据报表的故障原因,从而可以及时、准确高效地排除故障。附图说明图1为现有技术中用户侧展现的数据报表与后台的SQL语句之间的对照关系示意图;图2为现有技术中展现后的数据报表的结构示意图;图3为本专利技术实施例中的数据报表生成方法的流程图;图4为本专利技术实施例中确定出现不能提取到至少一个展现元素对应的数据的方法流程图;图5为本专利技术实施例中的数据报表在缺省不能提取到对应数据的展现元素时的结构示意图;图6为本专利技术实施例中的数据报表生成装置的结构示意图。具体实施方式针对现有技术中存在的当某一个数据来源的数据结构发生变化导致的无法展现数据报表以及对数据报表系统的维护和故障排除难度较大的问题,本专利技术实施例提供一种数据报表生成方法,该方法的流程如图3所示,具体执行步骤如下:S30:获取用于生成用户请求的数据报表的查询语句。在现有技术中,当用户首次请求某一数据报表时,会首先生成一个查询语句,根据该查询语句在后台数据库中查找所需的数据,然后生成数据报表展现给用户,当用户再次使用该数据报表时,直接调用该查询语句在数据库中查找数据,生成数据报表后向用户展现。本实施例中,该查询语句可以是用户首次请求某一数据报表后,在生成数据报表之前形成的;也可以是某一数据报表已经生成后使用该查询语句查找所需的数据时生成,用户再次使用该数据报表时,不再使用该查询语句查找所需的数据,而是首先进行下列步骤。查询语句可以是各种数据库操作语言,例如SQL语句等,当然也可以是其他查询语句,在这里不再赘述。S31:确定获取的查询语句中包含的关联元素、数据表标识元素和展现元素。其中关联元素与查询语句中包含的数据表标识元素对应的数据表中的元素存在关联关系,展现元素为用户请求的数据报表中需要展现的元素,展现元素对应的数据和关联元素对应的数据是从数据表标识元素对应的数据表中提取的。假设获取的查询语句为Select Al, A2, B3, B4, C4From A, B, C WhereAl = BI AndAl = Cl,该查询语句要实现的操作是当Al = BI且Al = Cl时,从表A中选取Al和A2,从表B中选取B本文档来自技高网
...

【技术保护点】
一种数据报表生成方法,其特征在于,包括:获取用于生成用户请求的数据报表的查询语句;确定获取的所述查询语句中包含的关联元素、数据表标识元素和展现元素,所述关联元素与所述查询语句中包含的数据表标识元素对应的数据表中的元素存在关联关系,所述展现元素为用户请求的数据报表中需要展现的元素,所述展现元素对应的数据和关联元素对应的数据是从所述数据表标识元素对应的数据表中提取的;生成分别对应确定的各关联元素、数据表标识元素和展现元素的数据提取属性信息,所述数据提取属性信息中包含权重分值,用于表征对应的元素在数据报表中的重要程度;按照生成的各数据提取属性信息在生成数据报表的过程中,若出现不能提取到至少一个展现元素对应的数据时,根据各数据提取属性信息中分别包含的权重分值,确定所述数据报表在缺省不能提取到对应数据的展现元素时具有的容错度值;在确定的容错度值大于设定阈值时,生成缺省不能提取到对应数据的展现元素的数据报表。

【技术特征摘要】

【专利技术属性】
技术研发人员:魏瑞云
申请(专利权)人:中国移动通信集团山东有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1