[发明专利]基于Excel表的计算方法、装置、设备及存储介质在审
申请号: | 201711415048.9 | 申请日: | 2017-12-21 |
公开(公告)号: | CN108170638A | 公开(公告)日: | 2018-06-15 |
发明(设计)人: | 储斌 | 申请(专利权)人: | 平安科技(深圳)有限公司 |
主分类号: | G06F17/15 | 分类号: | G06F17/15;G06F8/41;G06F8/30 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于Excel表的计算方法,该方法包括:当接收到计算指令时,获取目标计算公式,将所述目标计算公式拆分为若干个子公式;读取Excel表的配置文件,按照预设的MAP集合类在所述配置文件中定位所述子公式中的Java对象,并获取所述Java对象的取值;按照预设的Excel宏的公式函数和Java方法之间的对应关系,调用所述子公式对应的Java方法,将所述Java对象的取值代入所述Java方法中进行计算,得到所述目标计算公式的计算结果,其中,所述Java方法用于表示基于所述Java对象的运算规则。本发明还公开了一种基于Excel表的计算装置、设备和一种计算机可读存储介质。本发明能够缩减Excel表计算过程中对内存的消耗,同时提高计算效率。 1 | ||
搜索关键词: | 目标计算 配置文件 预设 计算机可读存储介质 读取 存储介质 公式函数 获取目标 计算公式 计算过程 计算效率 计算指令 计算装置 运算规则 调用 集合 消耗 | ||
当接收到计算指令时,获取目标计算公式,将所述目标计算公式拆分为若干个子公式;
读取Excel表的配置文件,按照预设的MAP集合类在所述配置文件中定位所述子公式中的Java对象,并获取所述Java对象的取值;
按照预设的Excel宏的公式函数和Java方法之间的对应关系,调用所述子公式对应的Java方法,将所述Java对象的取值代入所述Java方法中进行计算,得到所述目标计算公式的计算结果,其中,所述Java方法用于表示基于所述Java对象的运算规则。
2.如权利要求1所述的基于Excel表的计算方法,其特征在于,所述当接收到计算指令时,获取目标计算公式,将所述目标计算公式拆分为若干个子公式的步骤之前,还包括:获取Excel宏的公式函数,将所述公式函数编译为对应的Java方法;
建立所述公式函数和所述Java方法之间的对应关系。
3.如权利要求1所述的基于Excel表的计算方法,其特征在于,所述读取Excel表的配置文件,按照预设的MAP集合类在所述配置文件中定位所述子公式中的Java对象,并获取所述Java对象的取值的步骤包括:读取Excel表的配置文件,识别所述配置文件中用于标识Excel单元格的标签;
将所述标签转换为预设的MAP集合类中定义的键值;
按照预设的键值和Java对象之间的对应关系,将所述子公式中的Java对象转换为对应的键值;
将由所述标签转换得到的所述键值与由所述Java对象转换得到的所述键值进行匹配,得到所述配置文件中与所述Java对象对应的Excel单元格,将所述Excel单元格的取值作为所述Java对象的取值。
4.如权利要求3所述的基于Excel表的计算方法,其特征在于,所述将所述标签转换为预设的MAP集合类中定义的键值的步骤包括:分别获取所述标签中用于标识Excel单元格所在页数、列数和行数的字符及对应的Excel单元格的取值;
将所述字符转换为预设的MAP集合类中分别用于表示Excel表的页数、列数和行数的键值类型,并根据所述Excel单元格的取值为转换得到的所述键值类型进行赋值。
5.如权利要求1至4中任一项所述的基于Excel表的计算方法,其特征在于,所述按照预设的Excel宏的公式函数和Java方法之间的对应关系,调用所述子公式对应的Java方法,将所述Java对象的取值代入所述Java方法中进行计算,得到所述目标计算公式的计算结果的步骤之后,还包括:将所述计算结果在所述Excel表的用户交互界面中进行展示。
6.一种基于Excel表的计算装置,其特征在于,所述装置包括:拆分模块,用于当接收到计算指令时,获取目标计算公式,将所述目标计算公式拆分为若干个子公式;
获取模块,用于读取Excel表的配置文件,按照预设的MAP集合类在所述配置文件中定位所述子公式中的Java对象,并获取所述Java对象的取值;
计算模块,用于按照预设的Excel宏的公式函数和Java方法之间的对应关系,调用所述子公式对应的Java方法,将所述Java对象的取值代入所述Java方法中进行计算,得到所述目标计算公式的计算结果,其中,所述Java方法用于表示基于所述Java对象的运算规则。
7.如权利要求6所述的基于Excel表的计算装置,其特征在于,所述装置还包括:编译模块,用于获取Excel宏的公式函数,将所述公式函数编译为对应的Java方法;
建立模块,用于建立所述公式函数和所述Java方法之间的对应关系。
8.如如权利要求6所述的基于Excel表的计算装置,其特征在于,所述获取模块还用于:读取Excel表的配置文件,识别所述配置文件中用于标识Excel单元格的标签;
将所述标签转换为预设的MAP集合类中定义的键值;
按照预设的键值和Java对象之间的对应关系,将所述子公式中的Java对象转换为对应的键值;
将由所述标签转换得到的所述键值与由所述Java对象转换得到的所述键值进行匹配,得到所述配置文件中与所述Java对象对应的Excel单元格,将所述Excel单元格的取值作为所述Java对象的取值。
9.一种基于Excel表的计算设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的基于Excel表的计算程序,所述基于Excel表的计算程序被所述处理器执行时实现如权利要求1至5中任一项所述的基于Excel表的计算方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有基于Excel表的计算程序,所述基于Excel表的计算程序被处理器执行时实现如权利要求1至5中任一项所述的基于Excel表的计算方法的步骤。该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安科技(深圳)有限公司,未经平安科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711415048.9/,转载请声明来源钻瓜专利网。