本技术涉及报表,尤其涉及一种可视化报表模板的生成方法、装置、设备、介质及产品。
背景技术:
1、通常,开发web报表过程中,前端使用javascript编程语言及vue框架或react框架,后端使用java编程语言及srping体系。这种基于代码语言开发web报表的方式,会存在开发耗费人力多、开发周期长、效率低、且任何修改均需修改源代码并重新上线部署等问题。为了避免诸如此类的问题,出现了可视化配置报表技术。
2、相关技术中,配置人员在web界面完成报表数据配置模块的报表基本信息配置、数据源配置、参数配置、分组信息配置、列信息配置、以及表头表尾配置六大配置之后,通过报表解析模块以及报表绘制与展示模块实现报表数据的绘制及展示。
3、然而,上述方案中的报表配置信息均来源于人工配置,配置过程较复杂,容易发生人为错误。
技术实现思路
1、有鉴于此,本技术实施例提供了一种可视化报表模板的生成方法、装置、设备、介质及产品,旨在简化配置过程,并提高配置可视化报表模板的准确性。
2、本技术实施例的技术方案是这样实现的:
3、第一方面,本技术实施例提供了一种可视化报表模板的生成方法,所述方法包括:
4、获取目标业务数据以及统计需求信息,所述目标业务数据包括至少一种基于数据项目类型划分的业务子数据;
5、基于各所述业务子数据对预先创建好的空白可视化报表模板进行属性配置,获得配置后的可视化报表模板,所述配置后的可视化报表模板包括用于查询至少一种所述数据项目类型的sql(structured query language,结构化查询语言)语句;
6、对所述sql语句进行解析,获得表征待配置信息的解析结果;
7、基于所述解析结果和所述统计需求信息配置可视化报表模板的属性,得到目标可视化报表模板,其中,所述目标可视化报表模板与所述目标业务数据和所述统计需求信息对应。
8、上述方案中,所述解析结果包括第一信息和第二信息,所述第一信息用于表征目标筛选条件,所述第二信息用于表征目标查询字段;所述基于所述解析结果和所述统计需求信息配置可视化报表模板的属性,得到目标可视化报表模板,包括:
9、基于所述第一信息配置所述目标筛选条件的属性,并基于所述统计需求信息和/或所述第二信息,配置所述目标查询字段的属性;
10、确定所述目标筛选条件的属性和所述目标查询字段的属性配置完成,则生成目标可视化报表模板。
11、上述方案中,对所述sql语句进行解析,获得表征待配置信息的解析结果,包括:
12、对所述sql语句进行解析,获得至少一个筛选条件和至少一个查询字段;
13、基于携带设定的标识的筛选条件,生成所述第一信息;
14、基于所述至少一个查询字段在所述sql语句中的位置信息,生成所述第二信息。
15、上述方案中,所述第一信息包括目标筛选条件中的筛选字段,所述目标筛选条件的属性包括控件类型;所述基于所述第一信息,配置所述目标筛选条件的属性,包括:
16、基于所述筛选字段的数据类型配置所述控件类型;
17、其中,若所述数据类型为纯日期,则所述控件类型为纯日期控件;若所述数据类型为纯文本,则所述控件类型为纯文本控件;若所述数据类型为纯数值,则所述控件类型为纯数值控件;若所述数据类型为除所述纯日期、所述纯文本和所述纯数值之外的类型,则所述控件类型为下拉列表控件。
18、上述方案中,所述目标筛选条件的属性还包括默认值来源,所述方法还包括:
19、若确定所述控件类型为所述下拉列表控件,则根据所述筛选字段配置所述目标筛选条件的默认值来源。
20、上述方案中,根据所述筛选字段配置所述目标筛选条件的默认值来源,包括:
21、基于所述筛选字段的数据值,确定所述目标筛选条件为无条件查询或有条件查询;
22、若确定所述目标筛选条件为所述无条件查询,则配置所述目标筛选条件的默认值来源为无默认值;
23、若确定所述目标筛选条件为所述有条件查询,则基于所述筛选字段是否从应用系统获取到数据,配置所述目标筛选条件的默认值来源。
24、上述方案中,所述基于所述筛选字段是否从应用系统获取到数据,配置所述目标筛选条件的默认值来源,包括:
25、判断所述筛选字段是否从应用系统获取到数据,若确定从所述应用系统获取到数据,则获取所述筛选字段所筛选的数据的变化状态,基于所述筛选字段所筛选的数据的变化状态配置所述目标筛选条件的默认值来源;若确定从所述应用系统未获取到数据,则配置所述目标筛选条件的默认值来源为系统函数默认值。
26、上述方案中,所述变化状态包括第一状态和第二状态,所述第一状态表征所述筛选字段所筛选的数据不随所述应用系统的登录者变化,所述第二状态表征所述筛选字段所筛选的数据随所述应用系统的登录者变化;所述基于所述筛选字段所筛选的数据的变化状态配置所述目标筛选条件的默认值来源,包括:
27、若确定所述筛选字段所筛选的数据的变化状态为所述第一状态,则配置所述目标筛选条件的默认值来源为静态默认值;
28、若确定所述筛选字段所筛选的数据的变化状态为所述第二状态,则配置所述目标筛选条件的默认值来源为动态默认值。
29、上述方案中,所述目标筛选条件的属性还包括数据源类型;所述基于所述第一信息配置所述目标筛选条件的属性,还包括:
30、基于所述筛选字段确定所述筛选字段所筛选的数据是否已存储于应用系统中,若确定未存储于所述应用系统中,则配置所述目标筛选条件的数据源类型为第一类数据源,所述第一类数据源基于自定义json语言编写得到;
31、若确定已存储于所述应用系统中,则基于所述筛选字段所筛选的数据是否已存储于数据库或数据字典中,配置所述目标筛选条件的数据源类型;
32、若确定未存储于所述应用系统中,且确定从所述第一类数据源未获取到数据,则配置所述目标筛选条件的数据源类型为第四类数据源,所述第四类数据源基于js脚本编写得到。
33、上述方案中,所述基于所述筛选字段所筛选的数据是否已存储于数据库或数据字典中,配置所述目标筛选条件的数据源类型,包括:
34、判断所述筛选字段所筛选的数据是否已存储于数据库或数据字典中,若确定已存储于所述数据库中,则配置所述目标筛选条件的数据源类型为第二类数据源,所述第二类数据源基于自定义sql语言编写得到;
35、若确定已存储于所述数据字典中,则配置所述目标筛选条件的数据源类型为第三类据源,所述第三类数据源为数据字典。
36、上述方案中,所述第二信息包括位于目标关键字前半部分的第一字段以及位于所述目标关键字后半部分的第二字段;所述目标查询字段的属性包括目标查询字段的字段名、小计功能和/或合计功能;所述基于所述统计需求信息和/或所述第二信息,配置所述目标查询字段的属性,包括以下的一种或多种:
37、基于所述第一字段,配置所述目标查询字段的字段英文名;
38、基于所述第二字段,配置所述目标查询字段的字段中文名;
39、基于所述统计需求信息,确定是否开启小计功能和/或合计功能;
40、其中,所述小计功能用于基于第一目标公式对所述目标查询字段中的至少一个查询字段进行小计汇总,所述合计功能用于基于第二目标公式对所述目标查询字段所在的报表的数据进行合计汇总。
41、上述方案中,所述生成目标可视化报表模板之后,所述方法还包括:
42、获取到数据筛选条件,根据所述数据筛选条件获取报表数据,所述数据筛选条件为所述目标筛选条件的外部输入值;
43、基于所述报表数据,生成目标可视化报表。
44、第二方面,本技术实施例还提供了一种可视化报表模板的生成装置,所述装置包括:
45、数据获取模块,用于获取目标业务数据以及统计需求信息,所述目标业务数据包括至少一种基于数据项目类型划分的业务子数据;
46、模板配置模块,用于基于各所述业务子数据对预先创建好的空白可视化报表模板进行属性配置,获得配置后的可视化报表模板,所述配置后的可视化报表模板包括用于查询至少一种所述数据项目类型的sql语句;
47、数据解析模块,用于对所述sql语句进行解析,获得表征待配置信息的解析结果;
48、属性配置模块,用于基于所述解析结果和所述统计需求信息配置可视化报表模板的属性,得到目标可视化报表模板,其中,所述目标可视化报表模板与所述目标业务数据和所述统计需求信息对应。
49、第三方面,本技术实施例还提供了一种电子设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器,用于运行计算机程序时,执行第一方面所述方法的步骤。
50、第四方面,本技术实施例还提供了一种计算机存储介质,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面所述的方法。
51、第五方面,本技术实施例还提供了一种计算机程序产品,所述计算机程序产品上存储有计算机程序,所述计算机程序被处理器执行时,实现第一方面所述方法的步骤。
52、本技术实施例提供的技术方案,在配置可视化报表模板时,基于目标业务数据下各种数据项目类型的业务子数据,对预先创建好的空白可视化报表模板进行报表级别的属性配置,得到配置后的可视化报表模板。配置后的可视化报表模板包括用于查询前述至少一种数据项目类型的sql语句。对该sql语句进行解析,获得表征待配置信息的解析结果。基于解析结果和统计需求信息配置可视化报表模板的属性,得到目标可视化报表模板,该过程是一种自动化配置得到目标可视化报表模板的过程,目标可视化报表模板中的报表配置信息从配置源头上可以理解为是基于前述的sql语句进行解析得到的,与相关技术中采用人工配置报表配置信息的方式不同。相比于相关技术,这种基于sql语句解析配置报表信息的方式,配置过程更简单,且自动化配置过程也可提高配置报表信息的准确性。
1.一种可视化报表模板的生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述解析结果包括第一信息和第二信息,所述第一信息用于表征目标筛选条件,所述第二信息用于表征目标查询字段;所述基于所述解析结果和所述统计需求信息配置可视化报表模板的属性,得到目标可视化报表模板,包括:
3.根据权利要求2所述的方法,其特征在于,所述对所述sql语句进行解析,获得表征待配置信息的解析结果,包括:
4.根据权利要求2所述的方法,其特征在于,所述第一信息包括目标筛选条件中的筛选字段,所述目标筛选条件的属性包括控件类型;所述基于所述第一信息,配置所述目标筛选条件的属性,包括:
5.根据权利要求4所述的方法,所述目标筛选条件的属性还包括默认值来源,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述根据所述筛选字段配置所述目标筛选条件的默认值来源,包括:
7.根据权利要求6所述的方法,所述基于所述筛选字段是否从应用系统获取到数据,配置所述目标筛选条件的默认值来源,包括:
8.根据权利要求7所述的方法,其特征在于,所述变化状态包括第一状态和第二状态,所述第一状态表征所述筛选字段所筛选的数据不随所述应用系统的登录者变化,所述第二状态表征所述筛选字段所筛选的数据随所述应用系统的登录者变化;所述基于所述筛选字段所筛选的数据的变化状态配置所述目标筛选条件的默认值来源,包括:
9.根据权利要求6所述的方法,其特征在于,所述目标筛选条件的属性还包括数据源类型;所述基于所述第一信息配置所述目标筛选条件的属性,还包括:
10.根据权利要求9所述的方法,其特征在于,所述基于所述筛选字段所筛选的数据是否已存储于数据库或数据字典中,配置所述目标筛选条件的数据源类型,包括:
11.根据权利要求1所述的方法,其特征在于,所述第二信息包括位于目标关键字前半部分的第一字段以及位于所述目标关键字后半部分的第二字段;所述目标查询字段的属性包括目标查询字段的字段名、小计功能和/或合计功能;所述基于所述统计需求信息和/或所述第二信息,配置所述目标查询字段的属性,包括以下的一种或多种:
12.根据权利要求2所述的方法,其特征在于,所述生成目标可视化报表模板之后,所述方法还包括:
13.一种可视化报表模板的生成装置,其特征在于,所述装置包括:
14.一种电子设备,其特征在于,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,
15.一种计算机存储介质,所述计算机存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至12任一项所述方法的步骤。
16.一种计算机程序产品,所述计算机程序产品上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至12任一项所述方法的步骤。