掌桥专利:专业的专利平台
掌桥专利
首页

一种业务报表生成方法、设备及介质

文献发布时间:2023-06-19 19:35:22


一种业务报表生成方法、设备及介质

技术领域

本申请涉及数据处理技术领域,具体涉及一种业务报表生成方法、设备及介质。

背景技术

随着信息技术的不断发展,各行各业的报表信息也都从传统的纸质记载转变成电子系统记载的方式。传统的报表生成方式是针对每种用户需求开发一种报表,由于报表种类繁多,报表内容及操作方式也都非常相似,而且每个用户的需求也各不相同,该种方式消耗时间成本和人力成本都很大,效率较低。

发明内容

为了解决上述问题,本申请提出了一种业务报表生成方法,包括:

获取用户发送的业务报表生成请求,根据所述业务报表生成请求,确定所述用户对应的报表任务,以及所述报表任务对应的数据节点域;所述数据节点域包括多个数据源节点以及连接所述多个数据源节点的边;

根据所述报表任务,从所述数据节点域中的多个数据源节点中,确定基于所述报表任务生成的指定数据源节点;

通过所述指定数据源节点,获取所述报表任务对应的业务数据,并根据所述报表任务对应的业务类型,确定所述业务数据的数据交互模式;

通过所述数据交互模式,将所述业务数据渲染于预设的交互界面上,以生成业务报表。

在本申请的一种实现方式中,根据所述报表任务对应的业务类型,确定所述业务数据的数据交互模式,具体包括:

根据所述报表任务对应的业务类型,确定所述报表任务中各执行节点之间的执行关系;所述执行关系包括并列执行关系和从属执行关系;

若所述执行关系为并列执行关系,则确定所述业务数据的数据交互模式为多页面交互模式;

若所述执行关系为从属执行关系,则确定所述业务数据的数据交互模式为单页面交互模式。

在本申请的一种实现方式中,从所述数据节点域中的多个数据源节点中,确定基于所述报表任务生成的指定数据源节点,具体包括:

在所述执行关系为所述从属执行关系的情况下,对所述报表任务进行分析,以确定主任务和所述主任务对应的若干子任务;

从所述数据节点域中的多个数据源节点中,确定所述主任务对应的指定数据源节点。

在本申请的一种实现方式中,通过所述指定数据源节点,获取所述报表任务对应的业务数据,具体包括:

确定所述指定数据源节点是否有连接的边,若有,则确定以所述指定数据源节点为起点的业务路径;

确定所述业务路径包含的各数据源节点对应的属性信息,根据所述属性信息,从所述数据源节点中,筛选出与所述指定数据源节点相关联的关联数据源节点;

根据所述指定数据源节点和所述关联数据源节点,获取所述报表任务对应的业务数据。

在本申请的一种实现方式中,根据所述属性信息,从所述数据源节点中,筛选出与所述指定数据源节点相关联的关联数据源节点,具体包括:

确定所述业务路径中与所述指定数据源节点直接相连的数据源节点对应的属性信息,是否与所述指定数据源节点中的属性信息具有关联关系;

若有,则从与所述指定数据源节点直接相连的数据源节点中,筛选出与所述子任务相匹配的其他数据源节点;

根据所述属性信息,确定位于所述业务路径上的其他数据源节点对应的属性信息是否具有关联关系,若有,则对所述业务路径进行延伸,以根据所述业务路径,得到与所述子任务相对应的关联数据源节点。

在本申请的一种实现方式中,通过所述数据交互模式,将所述业务数据渲染于预设的交互界面上,以生成业务报表,具体包括:

若所述数据交互模式为所述单页面交互模式,确定所述交互页面对应的可视区域;

将至少部分业务数据填充至所述可视区域,并根据未填充至所述可视区域的其他业务数据,生成对应的虚拟数据列表;

按照预设的时间间隔,从所述虚拟数据列表中提取出业务数据,对所述可视区域中的至少部分业务数据进行更新。

在本申请的一种实现方式中,生成业务报表之后,所述方法还包括:

根据所述业务报表生成请求,确定所述业务报表对应的存储模式;所述存储模式包括临时存储和永久存储;

若所述存储模式为临时存储,则将所述业务报表存于缓存中,以通过调用所述业务报表实现对应业务数据的业务数据操作;

若所述存储模式为永久存储,则将所述业务报表作为导航菜单进行发布,并将所述业务报表存储于数据库中。

在本申请的一种实现方式中,生成业务报表之后,所述方法还包括:

根据所述业务报表生成请求,确定所述业务报表对应的所属类型;所述所属类型包括私有报表和公共报表;

若所述所属类型为所述私有报表,确定用户是否具有所述私有报表的使用权限,若有,则通过所述私有报表进行相应业务数据的业务数据操作;

若所述所属类型为所述公共报表,则将所述公共报表作为导航菜单发布于报表系统中,以便于所述用户对所述公共报表进行相应的业务数据操作。

本申请实施例提供了一种业务报表生成设备,其特征在于,设备包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:

获取用户发送的业务报表生成请求,根据所述业务报表生成请求,确定所述用户对应的报表任务,以及所述报表任务对应的数据节点域;所述数据节点域包括多个数据源节点以及连接所述多个数据源节点的边;

根据所述报表任务,从所述数据节点域中的多个数据源节点中,确定基于所述报表任务生成的指定数据源节点;

通过所述指定数据源节点,获取所述报表任务对应的业务数据,并根据所述报表任务对应的业务类型,确定所述业务数据的数据交互模式;

通过所述数据交互模式,将所述业务数据渲染于预设的交互界面上,以生成业务报表。

本申请实施例提供了一种非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:

获取用户发送的业务报表生成请求,根据所述业务报表生成请求,确定所述用户对应的报表任务,以及所述报表任务对应的数据节点域;所述数据节点域包括多个数据源节点以及连接所述多个数据源节点的边;

根据所述报表任务,从所述数据节点域中的多个数据源节点中,确定基于所述报表任务生成的指定数据源节点;

通过所述指定数据源节点,获取所述报表任务对应的业务数据,并根据所述报表任务对应的业务类型,确定所述业务数据的数据交互模式;

通过所述数据交互模式,将所述业务数据渲染于预设的交互界面上,以生成业务报表。

通过本申请提出的一种业务报表生成方法能够带来如下有益效果:

通过对业务报表生成需求进行分析,可确定对应的指定数据源节点,从而从指定数据源节点中获取到相应的业务数据,生成业务报表,无需针对每个用户的需求进行报表的自定义配置,提高了报表生成效率。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种业务报表生成方法的流程示意图;

图2为本申请实施例提供的一种业务报表生成设备的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

以下结合附图,详细说明本申请各实施例提供的技术方案。

如图1所示,本申请实施例提供的一种业务报表生成方法,包括:

S101:获取用户发送的业务报表生成请求,根据业务报表生成请求,确定用户对应的报表任务,以及报表任务对应的数据节点域;数据节点域包括多个数据源节点以及连接多个数据源节点的边。

当用户提出业务报表生成请求后,服务器可接收该请求,并据此确定用户对应的报表任务以及报表任务对应的数据节点域。数据节点域由多个数据源节点以及连接多个数据源节点的边构成,其中,至少部分边能够表示其连接的数据源节点之间具有关联关系。报表任务是根据业务报表生成请求所确定出的数据操作任务,可以抽象成数据字段或数据字段组之间的“与”和“或”关系。关联关系表示不同数据源节点之间的数据属性具有联系,比如,数据源节点A表示学校1的全体老师信息,与该数据源节点A相连接的数据源节点B表示高三年级的老师信息,其中,数据源节点A和数据源节点B的属性信息均能够描述老师个人信息,且对于数据源节点B来说,其部分属性信息与数据源节点A中的属性信息是从属关系,因此,上述两个数据源节点之间具有关联关系。

对于不同的报表任务,可通过多个数据源节点来获取该报表任务中相关业务数据。不同的数据节点域对应的业务数据类型不同,因此,在确定用户提出的报表任务后,首先需根据报表任务中所需业务数据的类型,从多个数据节点域中筛选出与之相符合的数据节点域。比如,若报表任务是生成全校师生个人信息表,此时需要从师生信息所在的数据节点域中获取相关数据;若报表任务是生成学校采购商品总额表,此时需要从采购商品所在的数据节点域中获取相关数据。

S102:根据报表任务,从数据节点域中的多个数据源节点中,确定基于报表任务生成的指定数据源节点。

在确定用户提出的报表任务以及该报表任务对应的数据节点域后,需从数据节点域中的多个数据源节点中,确定基于报表任务生成的指定数据源节点。需要说明的是,指定数据源节点可以为一个或多个,具体可根据报表任务的业务类型确定。

S103:通过指定数据源节点,获取报表任务对应的业务数据,并根据报表任务对应的业务类型,确定业务数据的数据交互模式。

在通过指定数据源节点获取业务数据之前,需确定当前指定数据源节点是否能够获取到用户所需的全部业务数据,若业务数据是分层级的汇总数据,则需要进一步确定与当前指定数据源节点所关联的关联数据源节点。因此,需首先确定报表任务对应的业务类型,从而确定出报表任务中各执行节点之间的执行关系。执行关系包括并列执行关系和从属执行关系。比如,当前用户提出的报表任务是生成高一年级和高二年级的老师个人信息表,此时只需从老师信息这一数据节点域中,获取到高一年级数据源节点中包含的老师信息,以及高一年级数据源节点中包含的老师信息,此时,报表任务中各执行节点之间的执行关系是并列执行关系,各执行节点之间互不影响。又或是,当用户提出的报表任务是本年度学校采购商品总额,不仅需要从采购总额表中获取到本年度的采购商品总额,还需要具体获取到各品类商品的采购总额,此时,报表中各执行节点之间的关系式从属执行关系,需首先获取到年度采购总额后才能进一步获取到各品类商品的采购总额。

因此,在执行关系为从属执行关系的情况下,业务数据的获取实际上是分层级进行的。那么,在确定用户的报表任务后,需对报表任务进行分析,以确定主任务和主任务对应的若干子任务。其中,主任务和若干子任务均对应有数据源节点,需从数据节点域中的多个数据源节点中,确定主任务对应的指定数据源节点。如此,在根据报表任务获取相应业务数据时,在确定主任务对应的指定数据源节点后,便可从若干子任务分别对应的数据源节点中,并行获取到相应的子任务的业务数据,这样在面对大数据量的报表任务时,通过进行任务拆分能够有效提高数据获取效率,加快了业务报表的生成速度。

具体地,在确定出主任务对应的指定数据源节点轴,确定该指定数据源节点是否有连接的边,若有,则确定以指定数据源节点为起点的业务路径。需要说明的是,此时业务路径长度为1,也就是说,当前业务路径是以指定数据源节点以及与指定数据源节点直接相连的一个数据源节点连接而成的路径。在确定出业务路径后,由于数据节点域中的边并不是全部都表示相邻数据源节点之间具有关联关系,需进一步确定业务路径包含的各数据源节点对应的属性信息,从而根据属性信息,从数据源节点中,筛选出与指定数据源节点相关联的关联数据源节点。进而,根据指定数据源节点和关联数据源节点,获取报表任务对应的业务数据。

在筛选关联数据源节点时,首先需确定业务路径中与指定数据源节点直接相连的数据源节点对应的属性信息,是否与指定数据源节点中的属性信息具有关联关系。如果有,则从与指定数据源节点直接相连的数据源节点中,筛选出与子任务相匹配的其他数据源节点。然后,根据属性信息,确定位于业务路径上的其他数据源节点对应的属性信息是否具有关联关系,若有,则对业务路径进行延伸,从而根据延伸后的业务路径中包含的数据源节点,得到与子任务相对应的关联数据源节点。需要说明的是,对业务路径进行延伸可以执行多次,直至业务路径末端的数据源节点对应的属性信息不再与业务路径之外的数据源节点具有关联关系。

在执行关系为并行执行关系的情况下,在确定报表任务分别对应的多个指定数据源节点后,直接从上述多个指定数据源节点中获取业务数据即可。

S104:通过数据交互模式,将业务数据渲染于预设的交互界面上,以生成业务报表。

由于报表任务中各执行节点之间的执行关系存在不同,与此相适应的,获取到的业务数据所采用的数据交互模式也相应存在不同。对于并列执行关系的报表任务来说,各执行节点之间互不影响,所需获取的数据量较大,因此,需将获取到的业务数据对应的数据交互模式设置为多页面交互模式。对于从属执行关系的报表任务来说,各执行节点之间具有先后顺序,且获取到的业务数据之间存在一定关联,因此,此时需将业务数据的数据交互模式设置为单页面交互模式,以便于进行数据的综合对比分析。

而在单页面交互模式下,由于数据量可能较大,加载全部的业务数据至交互界面容易带来页面卡顿的问题,本申请实施例对交互界面中的区域进行了区分,一部分是可视区域,业务数据在此区域内部能够进行展示和调用,另一部分是非可视区域,业务数据在此区域内不进行渲染。在将业务数据渲染于预设的交互界面时,可将至少部分业务数据填充至可视区域,并根据未填充至可视区域的其他业务数据,生成对应的虚拟数据列表。虚拟数据列表位于非可视区域内,可按照预设的时间间隔,从虚拟数据列表中提取出业务数据,并对此部分业务数据进行渲染,从而将其展示于可视区域内部,对可视区域中的至少部分业务数据进行更新。这样便不需要对全部业务数据进行一次性渲染,从而提高了数据在交互页面上的渲染性能,减少了由于大数据量而带来的页面卡顿及性能消耗高的问题。

在生成业务报表后,可根据用户业务报表生成请求确定业务报表对应的存储模式,存储模式包括临时存储和永久存储。若存储模式为临时存储,则说明此次获取到的业务数据重复利用价值不大,此时可将业务报表存于缓存中,从而通过调用业务报表实现对应业务数据的业务数据操作,并在完成业务数据操作后,自动从缓存中清除掉已调用完成的业务报表。若存储模式为永久存储,则说明当前获取到的业务数据具有较高的参考价值,为进一步提高报表利用率,可将业务报表作为导航菜单进行发布,并将业务报表存储于数据库中。

需要说明的是,用户能够对业务报表进行后续的业务数据操作,取决于业务报表在生成时的所属类型。业务报表对应的所属类型包括私有报表和公共报表。私有报表只能满足用户的私有查询,需确定当前用户是否具有私有报表的使用权限,若有,则用户可通过私有报表进行相应业务数据的业务数据操作,若没有,则不可对当前生成的业务报表进行相关操作。公共报表可作为通用报表供多个用户查看、编辑和操作,其可作为导航菜单发布于报表系统中,这样,用户可通过触发导航菜单中的特定位置,实现对公共报表的增删改查或是其他业务数据操作。本申请实施例针对不同的用户角色对业务报表设置了不同的访问条件,达到了业务隔离的效果,更有效保证了业务报表的可用性,满足了用户需求。

以上为本申请提出的方法实施例。基于同样的思路,本申请的一些实施例还提供了上述方法对应的设备和非易失性计算机存储介质。

图2为本申请实施例提供的一种业务报表生成设备的结构示意图。如图2所示,包括:

至少一个处理器;以及,

至少一个处理器通信连接的存储器;其中,

存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够:

获取用户发送的业务报表生成请求,根据业务报表生成请求,确定用户对应的报表任务,以及报表任务对应的数据节点域;数据节点域包括多个数据源节点以及连接多个数据源节点的边;

根据报表任务,从数据节点域中的多个数据源节点中,确定基于报表任务生成的指定数据源节点;

通过指定数据源节点,获取报表任务对应的业务数据,并根据报表任务对应的业务类型,确定业务数据的数据交互模式;

通过数据交互模式,将业务数据渲染于预设的交互界面上,以生成业务报表。

本申请实施例提供了一种非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,计算机可执行指令设置为:

获取用户发送的业务报表生成请求,根据业务报表生成请求,确定用户对应的报表任务,以及报表任务对应的数据节点域;数据节点域包括多个数据源节点以及连接多个数据源节点的边;

根据报表任务,从数据节点域中的多个数据源节点中,确定基于报表任务生成的指定数据源节点;

通过指定数据源节点,获取报表任务对应的业务数据,并根据报表任务对应的业务类型,确定业务数据的数据交互模式;

通过数据交互模式,将业务数据渲染于预设的交互界面上,以生成业务报表。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本申请实施例提供的设备和介质与方法是一一对应的,因此,设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述设备和介质的有益技术效果。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 报表文件的生成方法、终端设备及介质
  • 报表生成方法、装置、计算机设备及存储介质
  • 基于大数据的报表生成方法及装置、电子设备、存储介质
  • 报表生成方法、装置、计算机设备和存储介质
  • 一种数据报表实时统计方法、装置、设备及可读存储介质
  • 一种业务报表生成方法、电子设备及存储介质
  • 冷链物流业务报表生成方法、装置、电子设备及存储介质
技术分类

06120115967269