一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

生成报表的方法及装置与流程

2022-08-10 15:51:09 来源:中国专利 TAG:


1.本发明涉及大数据技术领域,尤其涉及一种生成报表的方法及装置。


背景技术:

2.本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
3.excel、word等可以编辑报表的软件,它们能够做出很复杂的报表样式,但是由于它们没有定义专门的报表结构来动态的加载报表数据,所有这类软件中的数据都是已经定义好的,不能动态变化的。数据库软件可以拥有动态变化的数据,但是这类软件一般只会提供最简单的表格形式来显示数据,它们没有实现报表软件的“格式多样化”的特性。
4.因此,要实现报表就需要有专门的报表结构来动态加载数据,同时也能够实现报表格式的多样化。目前生成报表的方法主要通过人工编写代码来实现,像一些加工逻辑相似且较为简单的报表,使用传统方式繁琐且低效。


技术实现要素:

5.本发明实施例提供一种生成报表的方法,用以高效方便地生成报表,该方法包括:
6.接收预设业务需求的报表生成请求;
7.根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;
8.将获取的报表生成参数拼接成sql,执行所述sql生成报表。
9.本发明实施例还提供一种生成报表的装置,用以高效方便地生成报表,该装置包括:
10.接收单元,用于接收预设业务需求的报表生成请求;
11.调用单元,用于根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;
12.生成单元,用于将获取的报表生成参数拼接成sql,执行所述sql生成报表。
13.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述生成报表的方法。
14.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述生成报表的方法。
15.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述生成报表的方法。
16.本发明实施例中,生成报表的方案,通过:接收预设业务需求的报表生成请求;根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;将获取的报表生成参数拼接成
sql,执行所述sql生成报表,既可以动态加载数据,又能够实现报表格式的多样化,实现了高效方便地生成报表。
附图说明
17.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
18.图1为本发明实施例中生成报表的方法的流程示意图;
19.图2为本发明另一实施例中生成报表的方法的流程示意图;
20.图3为本发明另一实施例中生成报表的方法的流程示意图;
21.图4为本发明实施例中生成报表的原理示意图;
22.图5为本发明实施例中生成报表的装置的结构示意图。
具体实施方式
23.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
24.在介绍本发明实施例之前,首先对本发明实施例涉及的名词进行介绍。
25.1、报表:报表就是用表格、图表等格式来动态显示数据,简单来说:“报表=多样的格式 动态的数据”。计算机上的报表的主要特点是数据动态化、格式多样化,并且实现报表数据和报表格式的完全分离。
26.2、数据库:按照数据结构来组织、存储和管理数据的仓库,是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。
27.现有的报表加工方法包括:(1)根据业务提出的报表需求来梳理逻辑;(2)抽取共性指标,根据不同的维度进行建模;(3)基于建模之后的表结构以及逻辑编写代码,从而完成报表的加工。
28.目前报表加工的方法,存在以下缺点:
29.(1)目前生成报表的方法主要通过人工编写代码来实现,像一些加工数量多但逻辑相似且较为简单的报表,使用传统方式太过耗时,繁琐且低效。
30.(2)不同的报表由不同的开发人员负责,当多张报表加工逻辑对比时没有统一的模板,还需重新整理,增加开发的工作量且耗费时间。
31.考虑到现有报表生成的技术问题,本发明实施例提供了一种生成报表的方案,该方案为一套规范的报表逻辑梳理、自动生成报表的方案,简单高效,方便快捷。下面对该生成报表的方案进行详细介绍。
32.图1为本发明实施例中生成报表的方法的流程示意图,如图1所示,该方法包括如下步骤:
33.步骤101:接收预设业务需求的报表生成请求;
34.步骤102:根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信
息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;
35.步骤103:将获取的报表生成参数拼接成sql,执行所述sql生成报表。
36.本发明实施例提供的生成报表的方法,工作时:接收预设业务需求的报表生成请求;根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;将获取的报表生成参数拼接成sql,执行所述sql生成报表,既可以动态加载数据,又能够实现报表格式的多样化,实现了高效方便地生成报表。下面进行详细介绍。
37.一、首先,介绍预先准备的步骤,即数据铺底的步骤。
38.具体实施时,根据业务需求梳理报表逻辑,补充excel表格中目标表信息、源表信息、映射信息、连接条件以及其他条件对应的内容。
39.后台铺底数据:在excel中维护相关信息,主要包括五部分:目标表信息、源表信息、映射说明、连接条件以及其他条件。
40.a.目标表信息,如下表1所示,可以包括:目标表名称、目标表字段名称、目标表字段类型以及长度、描述信息等。
[0041][0042]
表1
[0043]
b.源表信息,如下表2所示,可以包括:组别、源表名称、源表别名、源表字段名称、源表字段类型以及长度、描述信息等。
[0044][0045]
表2
[0046]
c.映射信息,如下表3所示,可以包括:映射规则(源表到目标表)、映射说明(直接映射、缺省取值,即默认值、其他加工逻辑)等。在一个实施例中,所述映射信息可以包括源表到目标表的映射策略及映射说明。
[0047][0048]
表3
[0049]
d.连接条件,如下表4所示,可以包括:目标表来源于多张源表且通过关联获取,则在此处说明连接条件,包括:关联的表名、别名、连接类型以及连接条件等。
[0050][0051]
表4
[0052]
e.其他条件:若存在需要分组或者排序的情况,则补充在其他条件中。即在一个实施例中,所述其他补充条件可以包括需要分组或者排序的条件。
[0053]
二、接着介绍上述步骤101至步骤103,即根据上述准备步骤的铺底数据进行报表
生成的步骤。
[0054]
具体实施时,获取excel表格中目标表信息、源表信息、映射信息、连接条件以及其他条件对应的内容,将获取的铺底数据拼接成要加工报表的sql,并自动执行sql。即根据目标表字段匹配对应的源表信息和映射规则,若存在关联条件则依次匹配,若源表信息中存在两个或多个组别,则需要对该报表结果集并集操作,最后获取其他条件的补充信息。综上,汇总成一个完整的sql,自动执行生成报表。
[0055]
在一个实施例中,如图2所示,根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数,可以包括:
[0056]
步骤1021:根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,目标表信息与源表信息之间的映射信息,以及目标表信息与源表信息之间的连接条件中获取报表生成参数。
[0057]
具体实施时,本发明实施例还结合目标表信息与源表信息之间的连接条件获取报表生成参数,进一步提高了报表生成的准确率。
[0058]
在一个实施例中,如图3所示,根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数,可以包括:
[0059]
步骤1022:根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,目标表信息与源表信息之间的映射信息,以及目标表信息与源表信息之间的其他补充条件中获取报表生成参数。
[0060]
具体实施时,本发明实施例还结合其他补充条件获取报表生成参数,进一步提高了报表生成的准确率。
[0061]
通过上述可知,本发明实施例提供的方案中可以包括如下模块:
[0062]
(1)数据铺底模块:补充excel表格中内容,目标表信息、源表信息、映射信息、连接条件以及其他条件,数据铺底模块为进行预先准备的一个模块。
[0063]
(2)系统调用模块:后台程序依次获取excel中铺底数据,系统调用模块为获取报表生成参数的模块,即下文提到的调用单元。
[0064]
(3)自动加工模块:将获取的铺底数据汇总成要加工报表的sql,自动执行sql生成报表,即下文提到的生成单元。
[0065]
为了便于理解本发明如何实施,下面结合图4举一例子进行详细说明。
[0066]
以统计每一笔银行汇票的止付信息报表为例,如图4所示,本发明实施例实现主要为以下几个步骤:
[0067]
(1)根据业务需求(每一笔银行汇票的止付信息的业务需求)梳理报表逻辑,补充目标表信息、源表信息、映射信息、连接条件以及其他条件对应的内容。
[0068]
a.目标表信息:
[0069]
a)目标表英文名称:report_lsrep_stpay_list;
[0070]
b)目标表中文名称:票据止付清单;
[0071]
c)目标表字段英文名称:blno;
[0072]
d)目标表字段中文名称:票据号码;
[0073]
e)目标表字段类型以及长度:varchar(100)。
[0074]
b.源表信息:
[0075]
a)组别:1、2(该示例涉及两个组别,则需要并集操作,即union all);
[0076]
b)源表英文名称:m_3ag_in_bank_bank_prom_note_drft_cntrct、m_3ag_cheque_cntrct;
[0077]
c)源表中文名称:行内银行本票汇票合约、支票合约;
[0078]
d)源表别名:t1、t2;
[0079]
e)源表字段英文名称:bil_no;
[0080]
f)源表字段中文名称:bil_no;
[0081]
g)源表字段类型以及长度:varchar(100)。
[0082]
c.映射信息:
[0083]
a)映射规则(源表到目标表):为空,映射规则为直接映射,无需填写内容;
[0084]
b)映射说明:直接映射。
[0085]
d.连接条件:目标表来源于多张源表且通过关联获取,则在此处说明连接条件。
[0086]
此示例虽来源于多张源表,但不涉及关联条件,只涉及并集处理。
[0087]
e.其他条件:若存在需要分组或者排序的情况,则补充在其他条件中。
[0088]
(2)执行系统调用模块,通过程序实现获取excel表格中各个参数的信息。
[0089]
(3)执行自动加工模块,将获取的各个参数拼接成sql且自动执行生成报表。
[0090]
a.临时表tmp:
[0091]
select源表字段英文名称from源表英文名称
[0092]
union all
[0093]
select源表字段英文名称from源表英文名称
[0094]
例如:select bil_no from
[0095]
m_3ag_in_bank_bank_prom_note_drft_cntrct/t1
[0096]
union all
[0097]
select bil_no from m_3ag_cheque_cntrct/t2。
[0098]
b.插入目标表:
[0099]
insert into目标表英文名称(目标表字段英文名称)select临时表字段英文名称from临时表
[0100]
例如:insert into report_lsrep_stpay_list(blno)select bil_no from tmp。
[0101]
本发明实施例提供的报表生成方法的优点是:统一的报表逻辑梳理模板,格式统一且便于维护;自动生成报表,简洁高效。
[0102]
本发明实施例中还提供了一种生成报表的装置,如下面的实施例所述。由于该装置解决问题的原理与生成报表的方法相似,因此该装置的实施可以参见生成报表的方法的实施,重复之处不再赘述。
[0103]
图5为本发明实施例中生成报表的装置的结构示意图,如图5所示,该装置包括:
[0104]
接收单元01,用于接收预设业务需求的报表生成请求;
[0105]
调用单元02,用于根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;
[0106]
生成单元03,用于将获取的报表生成参数拼接成sql,执行所述sql生成报表。
[0107]
在一个实施例中,所述调用单元具体用于:根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,目标表信息与源表信息之间的映射信息,以及目标表信息与源表信息之间的连接条件中获取报表生成参数。
[0108]
在一个实施例中,所述调用单元具体用于:根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,目标表信息与源表信息之间的映射信息,以及目标表信息与源表信息之间的其他补充条件中获取报表生成参数。
[0109]
在一个实施例中,所述其他补充条件可以包括需要分组或者排序的条件。
[0110]
在一个实施例中,所述映射信息可以包括源表到目标表的映射策略及映射说明。
[0111]
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述生成报表的方法。
[0112]
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述生成报表的方法。
[0113]
本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述生成报表的方法。
[0114]
本发明实施例中,生成报表的方案,通过:接收预设业务需求的报表生成请求;根据预设业务需求的报表生成请求,从预设业务需求对应的目标表信息,源表信息,以及目标表信息与源表信息之间的映射信息中获取报表生成参数;将获取的报表生成参数拼接成sql,执行所述sql生成报表,既可以动态加载数据,又能够实现报表格式的多样化,实现了高效方便地生成报表。
[0115]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0116]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0117]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0118]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0119]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献