一种报表管理方法、装置、报表管理系统和存储介质
文献发布时间:2024-04-18 19:58:21
技术领域
本申请实施例涉及数据处理的技术领域,具体而言,涉及一种报表管理方法、装置、报表管理系统和存储介质。
背景技术
随着企业数字化转型地深入推进,需要数据来支撑快速迭代的业务需求,及时应对市场变化,但是数字化的发展产生了大量丰富的数据,堆积的数据若是不经过分析处理并不能产生价值。
构建企业经营管控、业务发展报表是数据应用的一种重要方式,对报表的支撑越来越需要高效快速灵活,以达到快速完成业务部门需要的报表的需求,即从指标的生成与管理到进一步生成报表的全流程管理的要求越来越高。
现有的指标和报表在开发和管理过程中,普遍采用定制开发,每个指标都需要独立编写代码,导致开发过程极为耗时,相同数据或相似数据由不同开发人员、不同应用驱动,造成资源严重浪费,从而导致报表的整体开发效率低下。
发明内容
本申请实施例提供一种报表管理方法、装置、报表管理系统和存储介质,旨在提高报表的生成效率。
第一方面,本申请实施例提供一种报表生成方法,所述方法包括:
响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,每个指标对应有一个表征业务过程逻辑关系的SQL脚本,所述SQL脚本对应一个实例表;
获取所述多个指标各自对应的SQL脚本,对所述多个指标各自对应的SQL脚本进行解析,确定所述多个指标之间的业务过程逻辑关系;
根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,其中,所述目标报表中的所述多个指标对应有反查数据清单SQL脚本。
可选地,所述方法还包括:
响应于指标添加操作,获取待添加的指标对应的取数规则以及所述待添加的指标对应的目标业务的业务规则;
根据所述待添加的指标对应的业务规则,在所述目标业务的业务维度树中获取所述业务规则对应的业务过程逻辑关系;
根据所述待添加的指标的取数规则与所述待添加的指标对应的业务过程逻辑关系,确定并存储所述待添加的指标的SQL脚本;
通过SQL解析器解析所述待添加的指标的SQL脚本,并读取数据生成所述待添加的指标对应的实例表。
可选地,所述方法还包括:
分析目标业务的业务维度,得到所述目标业务的多个互不相同的基础业务规则;
根据所述多个互不相同的基础业务规则,组成为多个互不相同的组合业务规则;
根据所述基础业务规则与所述组合业务规则之间的业务过程逻辑关系,构建业务维度树。
可选地,根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,包括:
按照所述业务过程逻辑关系,将所述多个指标各自对应的实例表归类,通过数据编排创建视图应用表;
通过报表调用配置,根据所述多个指标对应的SQL脚本的配置转换,生成所述数据表模型形式的目标报表进行显示。
可选地,生成所述数据表模型形式的目标报表进行显示之后,所述方法还包括:
响应于针对所述目标报表上显示的任一指标的触发操作,确定待反查的指标,生成所述待反查的指标对应的反查数据清单SQL脚本,并弹窗显示所述反查数据清单SQL脚本。
可选地,生成所述待反查的指标对应的反查数据清单SQL脚本,包括:
获取所述待反查的指标的业务逻辑关系;
逆向解析所述待反查的指标的SQL脚本,结合所述待反查的指标的业务逻辑关系,确定所述待反查的指标对应的数据清单对应的反查数据清单SQL脚本。
可选地,所述方法还包括:
响应于针对所述待反查的指标对应的反查数据清单SQL脚本的触发操作,根据所述反查数据清单SQL脚本,读取并显示所述待反查的指标对应的数据清单。
第二方面,本申请实施例提供一种报表生成装置,所述装置包括:
选择模块,用于响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,每个指标对应有一个表征业务过程逻辑关系的SQL脚本,所述SQL脚本对应一个实例表;
解析模块,用于获取所述多个指标各自对应的SQL脚本,对所述多个指标各自对应的SQL脚本进行解析,确定所述多个指标之间的业务过程逻辑关系;
报表生成模块,用于根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,其中,所述目标报表中的所述多个指标对应有反查数据清单SQL脚本。
第三方面,本申请实施例提供一种报表管理系统,所述系统包括:
指标管理模块,用于创建指标,并确定每个指标各自表征业务过程逻辑关系的SQL脚本;
指标应用模块,用于响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,通过解析所述多个指标各自对应的SQL脚本,根据解析得到的所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排生成所述数据表模型形式的目标报表进行显示;以及响应于针对所述目标报表上显示的任一指标的触发操作确定待反查的指标,生成所述待反查的指标对应的反查数据清单SQL脚本,并根据所述反查数据清单SQL脚本,读取并显示所述待反查的指标对应的数据清单。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如实施例第一方面所述的报表生成方法。
有益效果:
响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,每个指标对应有一个表征业务过程逻辑关系的SQL脚本,所述SQL脚本对应一个实例表;获取所述多个指标各自对应的SQL脚本,对所述多个指标各自对应的SQL脚本进行解析,确定所述多个指标之间的业务过程逻辑关系;根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,其中,所述目标报表中的所述多个指标对应有反查数据清单SQL脚本。
本方法中,指标已经预设有对应的SQL脚本和实例表,而SQL脚本表征业务过程逻辑关系,通过解析多个指标各自对应的SQL脚本,可以确定多个指标之间业务逻辑关系,然后通过数据编排,就可以生成具有数据表模型形式的目标报表,相比于现有的生成报表时,逐一编写每个指标的代码的开发过程,提高了报表的生成效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提出的报表生成方法的步骤流程图;
图2是本申请一实施例提出的报表生成装置的功能模块图;
图3是本申请一实施例提供的报表管理系统的架构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参照图1,示出了本申请实施例中的一种报表生成方法的步骤流程图,所述方法具体可以包括以下步骤:
S101:响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,每个指标对应有一个表征业务过程逻辑关系的SQL脚本,所述SQL脚本对应一个实例表。
对于一个目标业务,可以预先定义目标业务对应的指标,在一种可行的实施方式中,响应于指标添加操作,确定待添加的指标,然后将待添加的指标添加在指标表中,在创建待添加的指标时,还获取待添加的指标对应的取数规则,并添加在指标数据取数规则表中。
创建新的指标时,允许用户自定义指标的名称,然后需要确定待添加的指标在目标业务中对应的业务规则,并且一个指标对应一个业务规则,即,指标与目标业务的业务规则之间具有唯一性。
在实际实施的过程中,营销分析目标业务的业务维度,得到所述目标业务的多个互不相同的基础业务规则,基础业务规则中通常不包含业务关系,例如产品、城乡标识、用户性质以及统计周期等表征抽象维度的为基础业务规则,每个业务规则都对应有多个业务解释,例如用户性质至少包括住宅和商用两种业务解释,例如产品的业务规则中,对于固定电话的产品的业务解释可以是:1.01.0.0,其中,1标识产品类型,01标识产品类型的最大一层固定电话,就可以用1.01.0.0唯一标识固定电话。
基础业务规则的表述范围是有限的,因此还需要根据所述多个互不相同的基础业务规则,组成为多个互不相同的组合业务规则,即每个组合业务规则也是唯一的,在实际实施的过程中,可以将生成的所有组合业务规则存储在业务组合表中。
示例地,组合业务规则为:城市住宅普通电话,通过基础业务规则中:产品、城市、住宅的组合,产品是普通电话+城乡标识是城市+用户性质是住宅,因此一个组合业务规则中存在多个业务解释。
然后根据基础业务规则和所述组合业务规则之间的业务过程逻辑关系,构建业务维度树,示例地选择所有产品-固定电话-城市政企普通电话和城市住宅普通电话。
在新增指标后,确定了所述待添加的指标对应的业务规则后,可以在所述目标业务的业务维度树中获取所述业务规则对应的业务过程逻辑关系,进而就实现对一个指标的事列化,如指标A对应的业务规则为:固定电话到达数,通过指标A就可以确定是城市固定电话的到达数,而不是乡村移动电话的达到数,然后将指标与业务规则之间的关系存储在指标维度关系表中。
然后根据所述待添加的指标的取数规则与所述待添加的指标对应的业务过程逻辑关系,确定并存储所述待添加的指标的SQL脚本,即一个指标的SQL脚本可以看做是取数规则和可以体现业务口径信息的业务过程逻辑关系的合并。
以固定电话到达数的指标为例:
指标的到达数的取数规则的SQL为:
SQL=”SELECT MONTH_NO,LOCAL_CODE,SUM(SERV_NUM)FROM D_SERV_NUM_MONTHLY
而固定电话到达数的业务逻辑关系是:到达数-固定电话,业务规则中固定电话的业务解释为1.01.0.0,该业务解释的生成条件是:1标识产品可以写成D_TERM_TYPE,01标识的三层是01,那么就可以写成D_TERM_TYPE WHERE LEVEL3_CODE=’01’。
则根据业务固定电话到达数的SQL脚本可以组合为:
SELECT MONTH_NO,LOCAL_CODE,SUM(SERV_NUM)FROM D_SERV_NUM_MONTHLY a,D_TERM_TYPE b WHERE LEVEL3_CODE=’01’And a.TERM_TYPE_id=b.term_type_id AndLOCAL_CODE=程序执行带入参数AND month_no=程序执行带入参数。
最后通过SQL解析器解析所述待添加的指标的SQL脚本,并读取数据生成所述待添加的指标对应的实例表。
在实际实施的过程中,需要生成报表时,用户只需要选择目标报表所需要的多个指标和目标报表对应的数据表类型即可,数据表类型可以包括单表报表、导航页交叉表、子报表账期与组织交叉表。
S102:获取所述多个指标各自对应的SQL脚本,对所述多个指标各自对应的SQL脚本进行解析,确定所述多个指标之间的业务过程逻辑关系。
在存储有指标与业务规则之间的关系存储在指标维度关系表中,每个指标可以拆分为基础指标和业务限定的分解形式,例如,固定电话到达数中,基础指标就是到达数,业务限定即为固定电话;城市固定电话到达数中,基础指标就是达到数,业务限定为城市、固定电话,其仍然体现了指标的业务过程逻辑。
通过对目标报表的多个指标的SQL脚本进行解析,可以实现多个指标之间的业务逻辑关系,并对每个指标与目标报表之间的关系进行自动配置,固话指标与数据表模型。
S103:根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,其中,所述目标报表中的所述多个指标对应有反查数据清单SQL脚本。
按照所述业务过程逻辑关系,将所述多个指标各自对应的实例表归类,通过数据编排创建视图应用表,作为报表配置贴近业务需求的中间表,然后通过报表调用配置,根据所述多个指标对应的SQL脚本的配置转换,生成所述数据表模型形式的目标报表进行显示。
并且,本方法生成目标报表中,每个指标还设置有反查数据清单SQL脚本,便于反向回溯到每个指标对应的数据清单。
具体地,响应于针对所述目标报表上显示的任一指标的触发操作,确定待反查的指标,生成所述待反查的指标对应的反查数据清单SQL脚本,并弹窗显示所述反查数据清单SQL脚本。
生成所述待反查的指标对应的反查数据清单SQL脚本时,获取所述待反查的指标的业务逻辑关系;逆向解析所述待反查的指标的SQL脚本,结合所述待反查的指标的业务逻辑关系,确定所述待反查的指标对应的数据清单对应的反查数据清单SQL脚本。
若是用户点击了待反查的指标对应的反查数据清单SQL脚本,则响应于针对所述待反查的指标对应的反查数据清单SQL脚本的触发操作,根据所述反查数据清单SQL脚本,读取并显示所述待反查的指标对应的数据清单。
在实际实施的过程中,当用户点击目标报表的任一个指标时,还可以显示指标的名称,指标的业务过程归属目录、指标的业务口径,指标物理表的地址,指标的SQL脚本以及反查数据清单SQL脚本。
本方法在生成目标报表时,指标已经预设有对应的SQL脚本和实例表,而SQL脚本表征业务过程逻辑关系,通过解析多个指标各自对应的SQL脚本,可以确定多个指标之间业务逻辑关系,然后通过数据编排,就可以生成具有数据表模型形式的目标报表。
对于一个目标业务,通过预先配置指标与业务规则的对应关系,并生成SQL脚本,可以在生成目标业务范围内的所有报表时,反复应用指标,一次开发而无需额外配置工作,自动完成从指标到底层数据表的穿透,指标自动追溯到底层数据库表,指标快速反查数据清单,实现自助使用清单数据提取和应用的能力,并且本方法中的SQL脚本采用动态拼接的方法,避免了单独开发多个SQL脚本的繁琐过程,可以提高报表生成的效率。
参照图2,示出了本申请实施例提供的一种报表生成装置的功能模块图,所述装置包括:
选择模块100,用于响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,每个指标对应有一个表征业务过程逻辑关系的SQL脚本,所述SQL脚本对应一个实例表;
解析模块200,用于获取所述多个指标各自对应的SQL脚本,对所述多个指标各自对应的SQL脚本进行解析,确定所述多个指标之间的业务过程逻辑关系;
报表生成模块300,用于根据所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排后,生成所述数据表模型形式的目标报表进行显示,其中,所述目标报表中的所述多个指标对应有反查数据清单SQL脚本。
可选地,所述装置还包括:
添加模块,用于响应于指标添加操作,获取待添加的指标对应的取数规则以及所述待添加的指标对应的目标业务的业务规则;
业务关系匹配模块,用于根据所述待添加的指标对应的业务规则,在所述目标业务的业务维度树中获取所述业务规则对应的业务过程逻辑关系;
SQL脚本生成模块,用于根据所述待添加的指标的取数规则与所述待添加的指标对应的业务过程逻辑关系,确定并存储所述待添加的指标的SQL脚本;
实例表生成模块,用于通过SQL解析器解析所述待添加的指标的SQL脚本,并读取数据生成所述待添加的指标对应的实例表。
可选地,所述装置还包括:
业务规则分析模块,用于分析目标业务的业务维度,得到所述目标业务的多个互不相同的基础业务规则;
业务规则组合模块,用于根据所述多个互不相同的基础业务规则,组成为多个互不相同的组合业务规则;
维度树构建模块,用于根据所述基础业务规则与所述组合业务规则之间的业务过程逻辑关系,构建业务维度树。
可选地,所述报表生成模块包括:
数据编排单元,用于按照所述业务过程逻辑关系,将所述多个指标各自对应的实例表归类,通过数据编排创建视图应用表;
显示单元,用于通过报表调用配置,根据所述多个指标对应的SQL脚本的配置转换,生成所述数据表模型形式的目标报表进行显示。
可选地,所述装置还包括:
反查数据清单SQL脚本生成模块,用于响应于针对所述目标报表上显示的任一指标的触发操作,确定待反查的指标,生成所述待反查的指标对应的反查数据清单SQL脚本,并弹窗显示所述反查数据清单SQL脚本。
可选地,所述反查数据清单SQL脚本生成模块包括:
获取单元,用于获取所述待反查的指标的业务逻辑关系;
逆向解析单元,用于逆向解析所述待反查的指标的SQL脚本,结合所述待反查的指标的业务逻辑关系,确定所述待反查的指标对应的数据清单对应的反查数据清单SQL脚本。
可选地,所述装置还包括:
数据清单生成模块,用于响应于针对所述待反查的指标对应的反查数据清单SQL脚本的触发操作,根据所述反查数据清单SQL脚本,读取并显示所述待反查的指标对应的数据清单。
参照图3,示出了本申请实施例提供的一种报表管理系统的架构图,所述装置包括指标管理模块与指标应用模块,具体地,所述指标管理模块用于管指标,所述指标应用模块用于用指标。
指标管理模块,用于创建指标,并确定每个指标各自表征业务过程逻辑关系的SQL脚本,具体包括业务统计粒度单元与指标工厂单元。
其中,业务统计粒度单元具有业务对象管理和业务视角管理功能,业务对象管理功能主要是对目标业务的数据进行管理,定义基础数据表,业务视角管理功能主要管理业务过程逻辑,例如,建立目标业务的业务过程目录,在业务过程目录上配置每个业务过程的来源数据源、来源表、更新周期、发布区域、账期字段、分区字段等信息。
指标工厂单元包括原子指标管理、业务过程管理、业务限定管理、统计周期管理以及派生指标管理等功能,原子指标管理是对不体现业务过程的基础指标进行管理,业务过程管理主要确定指标的业务过程逻辑,业务限定管理主要是根据业务规则确定的业务限定,例如一个基础指标为达到数的指标的业务限定可以为城市、固定电话,统计周期管理主要是管理指标的统计时间周期,派生指标管理主要管理指标,一个指标从指标与业务规则的对应关系上反映出两部内容,包括基础指标和业务限定条件,具有业务限定条件的指标可以体现出指标的业务过程逻辑,即为派生指标。
指标应用模块,用于响应于选择操作,确定目标报表对应的多个指标以及所述目标报表的数据表模型,通过解析所述多个指标各自对应的SQL脚本,根据解析得到的所述业务过程逻辑关系,对所述多个指标各自对应的实例表通过数据编排生成所述数据表模型形式的目标报表进行显示;以及响应于针对所述目标报表上显示的任一指标的触发操作确定待反查的指标,生成所述待反查的指标对应的反查数据清单SQL脚本,并根据所述反查数据清单SQL脚本,读取并显示所述待反查的指标对应的数据清单。
指标应用模块包括视图管理单元、数据编排单元和应用单元,视图管理单元具有基础宽表管理和视图管理的功能,通过基础宽表管理和视图管理对指标实例按物理表归类和一定业务视图进行管理,经过数据编排和数据融合,灵活组合快速形成报表;应用单元包括取数工具、挖掘工具和报表工具,其中取数工具用于根据SQL类型指令获取数据,报表工具用于显示最后生成的目标报表,并显示目标报表中每个指标的反查数据清单SQL脚本。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如如权利要求实施例所述的报表生成方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
- 一种数据报表实时统计方法、装置、设备及可读存储介质
- 报表自动上传方法、装置、计算机设备及存储介质
- 报表数据的处理方法、装置、计算机设备和存储介质
- 报表生成方法、装置、计算机设备及存储介质
- 基于大数据的报表生成方法及装置、电子设备、存储介质
- 一种电子报表的管理方法、装置、服务器和存储介质
- 一种报表管理方法、装置、计算机设备及存储介质