[发明专利]一种实现树状层级结构报表数据排序的方法及系统在审
申请号: | 201810476429.6 | 申请日: | 2018-05-17 |
公开(公告)号: | CN110569300A | 公开(公告)日: | 2019-12-13 |
发明(设计)人: | 殷慧敏 | 申请(专利权)人: | 江苏优瀛科技有限公司 |
主分类号: | G06F16/26 | 分类号: | G06F16/26;G06F17/24 |
代理公司: | 11577 北京知呱呱知识产权代理有限公司 | 代理人: | 吕学文;朱红涛 |
地址: | 210042 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 排序 原始数据信息 层级结构 排序数组 区域对应 数据行 字段 报表数据 层次节点 数据地址 数据区域 数据写回 根节点 列数据 行数据 层级 构建 行头 存储 | ||
本发明公开了一种实现树状层级结构报表数据排序的方法及系统,该方法包括:从列头区域和行头区域,获取排序请求,并根据排序请求和树状层级结构报表,构建排序数组,其中,排序请求,包括:原始数据信息;原始数据信息包括:列头区域对应树状层级报表中全部层次或任一层次节点下的行数据和列头区域中的任一区域对应的列数据;从树状层级结构报表的根节点开始,为数据行标记序号,并将数据行的数据地址、序号,以及排序字段的值存储至排序数组;根据原始数据信息,从排序数组中获取原始数据信息对应的数据,并根据数据的排序字段的值进行排序;将排序后的数据写回至数据区域。
技术领域
本发明涉及数据加工技术领域,具体涉及一种实现树状层级结构报表数据排序的方法及系统。
背景技术
目前,对统计数据的排序主要通过表格控件实现对简单表格数据的排序,该表格控件只能实现对单一层级的数据排序无法对多层级数据排序,并且单级表格达到几十列,上千行=接近10万个数据单元的时候,排序将耗费数十秒甚至更多时间,处理很慢,影响用户体验。该排序方式,通常在当前排序完之后,无法对排序后的数据再次处理,且在数据较多时,操作慢,且容易出错,用户体验度也低。
发明内容
本发明的目的在于提供一种实现树状层级结构报表数据排序的方法及系统,用以解决现有技术中存在的问题。
为实现上述目的,本发明的技术方案为一种实现树状层级结构报表数据排序的方法,该方法应用于一种树状层级报表对应的容器,该容器,包括:列头区域、行头区域和数据区域,列头区域设置列头事件响应,列头事件响应用于响应数据区域中任一列的操作,行头区域设置行头事件响应,行头事件用于响应数据区域中任一行的操作,方法还包括:从列头区域和行头区域,获取排序请求,并根据排序请求和树状层级结构报表,构建排序数组,其中,排序请求,包括:原始数据信息;原始数据信息包括:列头区域对应树状层级报表中全部层次或任一层次节点下的行数据和列头区域中的任一区域对应的列数据;从树状层级结构报表的根节点开始,为数据行标记序号,并将数据行的数据地址、序号,以及排序字段的值存储至排序数组;根据原始数据信息,从排序数组中获取原始数据信息对应的数据,并根据数据的排序字段的值进行排序;将排序后的数据写回至数据区域。
可选的,排序请求,还包括:与原始数据信息对应的排序算法。
可选的,根据原始数据信息,从排序数组中获取原始数据信息对应的数据,并根据数据的排序字段的值进行排序,具体包括:
根据深度优先算法从根节点开始遍历数据行的数据节点,并对数据节点进行标记序号,以及将数据行地址、增量序号、对应行的排序字段依次保存至排序数组;根据排序字段,根据快速排序算法进行排序。
可选的,根据原始数据信息,从排序数组中获取原始数据信息对应的数据,并根据数据的排序字段的值进行排序,具体包括:根据递归算法遍历树状层级结构报表中的全部层级中的每一层级下的数据行,将数据行地址、全部层级中的每一层级的原始顺序号以及排序字段值保存至排序数组;根据所述排序字段值,采用快速排序算法进行排序。
可选的,在根据排序请求和树状层级结构报表,构建排序数组的步骤之前,还包括:配置列头区域中的每一列与算法的对应关系。
可选的,将排序后的数据写回至数据区域,包括:刷新哈希图,其中,哈希图包括容器的数据行和数据值的对应关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏优瀛科技有限公司,未经江苏优瀛科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810476429.6/2.html,转载请声明来源钻瓜专利网。