[发明专利]报表生成方法、装置、计算机设备和存储介质在审
申请号: | 202011137858.4 | 申请日: | 2020-10-22 |
公开(公告)号: | CN112434018A | 公开(公告)日: | 2021-03-02 |
发明(设计)人: | 王凯亮;陈创胜 | 申请(专利权)人: | 金蝶云科技有限公司 |
主分类号: | G06F16/215 | 分类号: | G06F16/215;G06F16/22;G06F16/242 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 熊文杰 |
地址: | 523808 广东省东莞*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 报表 生成 方法 装置 计算机 设备 存储 介质 | ||
1.一种报表生成方法,其特征在于,所述方法包括:
从初始的报表控件中提取取数公式;
根据所述取数公式从后台数据库中查询数据;
根据查询的数据的数据结构,构建内存数据库,并导入查询的所述数据至所述内存数据库中;
根据所述取数公式中的查询参数,对所述内存数据库创建索引;
通过所述索引,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据,并基于取出的所述数据进行计算;
把对应于所述取数公式的计算结果赋值给所述报表控件,生成报表。
2.根据权利要求1所述的方法,其特征在于,所述根据所述取数公式从后台数据库中查询数据,包括:
当提取的所述取数公式为多个时,对所述多个公式进行分组;
分别将同组取数公式中的查询参数进行合并,得到各组取数公式分别对应的查询参数集合;
分别根据各所述查询参数集合,从后台数据库中查询数据。
3.根据权利要求2所述的方法,其特征在于,所述分别根据各所述查询参数集合,从后台数据库中查询数据,包括:
根据同一所述查询参数集合中的查询参数,生成查询语句;
根据所述查询语句,从后台数据库中查询数据。
4.根据权利要求2所述的方法,其特征在于,所述分别将同组取数公式中的查询参数进行合并,得到各组取数公式分别对应的查询参数集合,包括:
针对同组取数公式中同一类型的多个查询参数,当所述多个查询参数满足接近条件时,则根据所述查询参数中的最小查询参数和最大查询参数,生成对应的范围取数条件。
5.根据权利要求1所述的方法,其特征在于,所述通过所述索引,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据,并基于取出的所述数据进行计算,包括:
当提取的取数公式为多个时,分别将每个取数公式中的查询参数拼接生成过滤条件;
根据所述索引和每个取数公式所对应的所述过滤条件,从所述内存数据库中取出每个所述取数公式所对应的数据;
基于取出的所述数据进行计算,得到每个取数公式对应的计算结果。
6.根据权利要求1所述的方法,其特征在于,所述基于取出的所述数据进行计算,包括:
基于取出的所述数据进行计算,生成数据字典;所述数据字典中的键,是由所述取数公式的名称和所述取数公式中的查询参数组成的字符串,所述数据字典中的值,是所述取数公式的计算结果;
所述把对应于所述取数公式的计算结果赋值给所述报表控件,生成报表,包括:
按照所述数据字典中的键确定所述报表控件中相应的取数公式,并根据所述数据字典中的值,将所述计算结果赋值给报表控件中所确定的所述取数公式。
7.根据权利要求1所述的方法,其特征在于,所述通过所述索引,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据,包括:
根据所述取数公式中的查询参数构建查询表达式;
当所述内存数据库中已缓存与所述查询表达式匹配的执行计划时,则
根据所述匹配的执行计划和所述索引,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据。
8.根据权利要求7所述的方法,其特征在于,所述通过所述索引,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据还包括:
当所述内存数据库中未缓存与所述查询表达式匹配的执行计划时,则
通过所述内存数据库对所述查询表达式进行编译解析,生成执行计划,并将所述执行计划进行缓存;
按照所述索引和生成的所述执行计划,在所述内存数据库中取出所述取数公式中的查询参数所对应的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金蝶云科技有限公司,未经金蝶云科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011137858.4/1.html,转载请声明来源钻瓜专利网。