[发明专利]一种打开报表的方法及装置有效
申请号: | 201811119324.1 | 申请日: | 2018-09-25 |
公开(公告)号: | CN109344380B | 公开(公告)日: | 2023-04-07 |
发明(设计)人: | 武鹏;韩伟;袁珂 | 申请(专利权)人: | 浪潮通用软件有限公司 |
主分类号: | G06F40/18 | 分类号: | G06F40/18 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 李世喆 |
地址: | 250000 *** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 打开 报表 方法 装置 | ||
1.一种打开报表的方法,其特征在于,预先生成报表的至少一个快照,还包括:
针对每个所述快照,执行:实时判断在生成当前快照之后位于所述报表中的所述当前快照对应的当前报表信息是否发生更新,如果是,则确定所述当前快照不可用,否则,确定所述当前快照可用;
在接收到打开报表的指令后,读取所述至少一个快照中可用的快照,加载所述至少一个快照中不可用的快照对应的报表信息,实现打开所述报表;
所述预先生成报表的至少一个快照,包括:
预先将所述报表划分为行信息、列信息、单元格信息、报表数据信息和公式信息;
根据所述列信息,生成所述列信息对应的快照;
根据所述行信息,生成所述行信息对应的快照;
根据所述单元格信息,生成所述单元格信息对应的快照;
根据所述报表数据信息,生成所述报表数据信息对应的快照;
根据所述公式信息,生成所述公式信息对应的快照;
所述读取所述至少一个快照中可用的快照,加载所述至少一个快照中不可用的快照对应的报表信息,实现打开所述报表,包括:
A1:判断所述列信息对应的快照是否可用,如果是,则执行A1,否则,执行A2;
A2:读取所述列信息对应的快照,执行A4;
A3:加载所述列信息,执行A4;
A4:判断所述行信息对应的快照是否可用,如果是,则执行A5,否则,执行A6;
A5:读取所述行信息对应的快照,执行A7;
A6:加载所述行信息,执行A7;
A7:判断所述单元格信息对应的快照是否可用,如果是,则执行A8,否则,执行A9;
A8:读取所述单元格信息对应的快照,并发执行A10和A11;
A9:加载所述单元格信息,并发执行A10和A11;
A10:判断所述报表数据信息对应的快照是否可用,如果是,则读取所述报表数据信息对应的快照,否则,加载所述报表数据信息;
A11:判断所述公式信息对应的快照是否可用,如果是,则读取所述公式信息对应的快照,否则,加载所述公式信息;
所述根据所述列信息,生成所述列信息对应的快照,包括:
确定所述报表的报表内码;
确定所述报表内码对应的所述报表的数据列的各个维度的至少一种第一组合;
确定每个所述第一组合对应的数据列的属性;
根据每个所述第一组合对应的数据列的属性,生成所述列信息对应的快照;
所述根据所述行信息,生成所述行信息对应的快照,包括:
确定所述报表的实例内码、组织内码和过滤维度的至少一种第二组合;
确定每个所述第二组合对应的所述报表的行的属性;
根据每个所述第二组合对应的所述报表的行的属性,生成每个所述第二组合对应的数据包;
根据每个所述第二组合对应的数据包,生成所述行信息对应的快照;
所述根据所述单元格信息,生成所述单元格信息对应的快照,包括:
确定所述报表的实例内码、组织内码和过滤维度的至少一种第三组合;
确定每个所述第三组合对应的所述报表的单元格的属性;
根据每个所述第三组合对应的所述报表的单元格的属性,生成每个所述第三组合对应的数据包;
根据每个所述第三组合对应的数据包,生成所述单元格信息对应的快照;
进一步包括:预先为所述报表设置格式快照;
在接收到打开报表的指令后,判断所述报表是否不可修改的状态,如果是,则读取所述报表的格式快照,实现打开所述报表;
和/或,
在所述确定所述当前快照不可用之后,进一步包括:
根据更新后的所述当前报表信息生成新的快照,确定更新后的所述当前报表信息对应的快照可用;
和/或,
进一步包括:
接收外部删除指令,删除所述至少一个快照中的任一快照,确定被删除的快照不可用。
2.一种打开报表的装置,其特征在于,包括:
生成单元,用于生成报表的至少一个快照;
检测单元,用于针对每个所述快照,执行:实时判断在生成当前快照之后位于所述报表中的所述当前快照对应的当前报表信息是否发生更新,如果是,则确定所述当前快照不可用,否则,确定所述当前快照可用;
打开单元,用于在接收到打开报表的指令后,读取所述至少一个快照中可用的快照,加载所述至少一个快照中不可用的快照对应的报表信息,实现打开所述报表;
所述生成单元,用于:
预先将所述报表划分为行信息、列信息、单元格信息、报表数据信息和公式信息;
根据所述列信息,生成所述列信息对应的快照;
根据所述行信息,生成所述行信息对应的快照;
根据所述单元格信息,生成所述单元格信息对应的快照;
根据所述报表数据信息,生成所述报表数据信息对应的快照;
根据所述公式信息,生成所述公式信息对应的快照;
所述打开单元,用于:
A1:判断所述列信息对应的快照是否可用,如果是,则执行A1,否则,执行A2;
A2:读取所述列信息对应的快照,执行A4;
A3:加载所述列信息,执行A4;
A4:判断所述行信息对应的快照是否可用,如果是,则执行A5,否则,执行A6;
A5:读取所述行信息对应的快照,执行A7;
A6:加载所述行信息,执行A7;
A7:判断所述单元格信息对应的快照是否可用,如果是,则执行A8,否则,执行A9;
A8:读取所述单元格信息对应的快照,并发执行A10和A11;
A9:加载所述单元格信息,并发执行A10和A11;
A10:判断所述报表数据信息对应的快照是否可用,如果是,则读取所述报表数据信息对应的快照,否则,加载所述报表数据信息;
A11:判断所述公式信息对应的快照是否可用,如果是,则读取所述公式信息对应的快照,否则,加载所述公式信息;
所述生成单元,在执行所述根据所述列信息,生成所述列信息对应的快照时,用于:
确定所述报表的报表内码;
确定所述报表内码对应的所述报表的数据列的各个维度的至少一种第一组合;
确定每个所述第一组合对应的数据列的属性;
根据每个所述第一组合对应的数据列的属性,生成所述列信息对应的快照;
所述生成单元,在执行所述根据所述行信息,生成所述行信息对应的快照时,用于:
确定所述报表的实例内码、组织内码和过滤维度的至少一种第二组合;
确定每个所述第二组合对应的所述报表的行的属性;
根据每个所述第二组合对应的所述报表的行的属性,生成每个所述第二组合对应的数据包;
根据每个所述第二组合对应的数据包,生成所述行信息对应的快照;
所述生成单元,在执行所述根据所述单元格信息,生成所述单元格信息对应的快照时,用于:
确定所述报表的实例内码、组织内码和过滤维度的至少一种第三组合;
确定每个所述第三组合对应的所述报表的单元格的属性;
根据每个所述第三组合对应的所述报表的单元格的属性,生成每个所述第三组合对应的数据包;
根据每个所述第三组合对应的数据包,生成所述单元格信息对应的快照;
进一步包括:
设置单元,用于为所述报表设置格式快照;
打开单元,进一步用于在接收到打开报表的指令后,判断所述报表是否不可修改的状态,如果是,则读取所述报表的格式快照,实现打开所述报表;
和/或,
所述检测单元,进一步用于在所述确定所述当前快照不可用之后,根据更新后的所述当前报表信息生成新的快照,确定更新后的所述当前报表信息对应的快照可用;
和/或,
进一步包括:
删除单元,用于接收外部删除指令,删除所述至少一个快照中的任一快照,确定被删除的快照不可用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811119324.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:检报管理方法及系统
- 下一篇:一种题卡合一试卷的生成和识别方法