1、(10)申请公布号 CN 103699557 A (43)申请公布日 2014.04.02 CN 103699557 A (21)申请号 201310397941.9 (22)申请日 2013.09.04 G06F 17/30(2006.01) G06F 17/24(2006.01) H04L 29/06(2006.01) (71)申请人 中国四维测绘技术有限公司 地址 100048 北京市海淀区紫竹院南百胜村 一号 申请人 中寰卫星导航通信有限公司 (72)发明人 胡凯 毕垒 宋波 赵亮 常飙 皮志云 李国旺 卢浩雷 赵佳颖 (74)专利代理机构 北京同立钧成知识产权代理 有限公司 1120
2、5 代理人 张娜 (54) 发明名称 报表处理方法及系统 (57) 摘要 本发明提供一种报表处理方法及系统, 其中, 方法包括 : 接收用户设备发送的报表生成请求消 息, 报表生成请求消息中包含报表生成规则和报 表需求信息 ; 将报表生成请求消息存储在分布式 缓存中 ; 定时查询分布式缓存中的报表生成请求 消息, 并根据查询到的报表生成请求消息从第一 数据库中提取与报表需求信息匹配的报表数据, 并将报表数据存储在分布式缓存中, 根据报表生 成规则和报表数据在分布式缓存中生成报表 ; 将 生成的报表写入文件服务器, 以供用户设备从文 件服务器下载报表。通过本发明用户不需要每次 需要报表数据时都要
3、登录报表系统去查找和导 出, 从而减少了系统负担, 方便了用户。 (51)Int.Cl. 权利要求书 2 页 说明书 4 页 附图 3 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书4页 附图3页 (10)申请公布号 CN 103699557 A CN 103699557 A 1/2 页 2 1. 一种报表处理方法, 其特征在于, 包括 : 接收用户设备发送的报表生成请求消息, 所述报表生成请求消息中包含报表生成规则 和报表需求信息 ; 将所述报表生成请求消息存储在分布式缓存中 ; 定时查询所述分布式缓存中的报表生成请求消息, 并根据查询到的报表生成请求
4、消息 从第一数据库中提取与所述报表需求信息匹配的报表数据, 并将所述报表数据存储在所述 分布式缓存中, 根据所述报表生成规则和报表数据在所述分布式缓存中生成报表 ; 将生成的报表写入文件服务器, 以供所述用户设备从所述文件服务器下载所述报表。 2. 根据权利要求 1 所述的方法, 其特征在于, 所述将生成的报表写入文件服务器之后, 还包括 : 发送报表生成响应消息给用户设备, 以通知所述用户设备从所述文件服务器上下载所 请求的报表 ; 所述响应消息包含报表属性信息。 3. 根据权利要求 1 所述的方法, 其特征在于, 还包括 : 接收用户设备发送的报表查询请求消息, 所述报表查询请求消息包括查
5、询需求信息 ; 根据所述查询需求信息从所述第一数据库中提取与所述查询需求信息匹配的数据 ; 将查询到的数据存储在所述分布式缓存中, 以使所述分布式缓存中根据系统默认规则 和查询到的数据生成报表 ; 将所述分布式缓存生成的报表推送给所述用户设备。 4. 根据权利要求 1 3 中任一项所述的方法, 其特征在于, 还包括 : 将所述报表生成请求消息存储在第二数据库中。 5. 根据权利要求 4 所述的方法, 其特征在于, 所述定时查询所述分布式缓存中的报表 生成请求消息之后, 还包括 : 若查询所述分布式缓存中没有所述报表生成请求消息, 则查询所述第二数据库中是否 存储有报表生成请求消息, 若是, 则
6、从所述第二数据库中提取所述报表生成请求消息到分 布式缓存中。 6. 一种报表处理系统, 其特征在于, 包括 : 接收模块, 用于接收用户设备发送的报表生成请求消息, 所述报表生成请求消息中包 含报表生成规则和报表需求信息 ; 存储模块, 用于将所述报表生成请求消息存储在分布式缓存中 ; 生成模块, 用于定时查询所述分布式缓存中的报表生成请求消息, 并根据查询到的报 表生成请求消息从第一数据库中提取与所述报表需求信息匹配的报表数据, 并将所述报表 数据存储在所述分布式缓存中, 根据所述报表生成规则和报表数据在所述分布式缓存中生 成报表 ; 写入模块, 用于将生成的报表写入文件服务器, 以供所述用
7、户设备从所述文件服务器 下载所述报表。 7. 根据权利要求 6 所述的系统, 其特征在于, 还包括 : 通信模块, 用于在将生成的报表写入文件服务器之后, 发送报表生成响应消息给用户 设备, 以通知所述用户设备从所述文件服务器上下载所请求的报表 ; 权 利 要 求 书 CN 103699557 A 2 2/2 页 3 所述响应消息包含报表属性信息。 8. 根据权利要求 6 所述的系统, 其特征在于, 所述接收模块, 还用于接收用户设备发送 的报表查询请求消息, 所述报表查询请求消息包括查询需求信息 ; 所述生成模块, 还用于根据所述查询需求信息从所述第一数据库中提取与所述查询需 求信息匹配的数
8、据 ; 所述存储模块, 还用于将查询到的数据存储在所述分布式缓存中, 根据 系统默认规则和查询到的数据在所述分布式缓存中生成报表 ; 所述通信模块, 还用于将所述分布式缓存生成的报表推送给所述用户设备。 9. 根据权利要求 6 8 中任一项所述的系统, 其特征在于, 所述存储模块, 还用于将所 述报表生成请求消息存储在第二数据库中。 10. 根据权利要求 9 所述的系统, 其特征在于, 所述生成模块, 还用于在定时查询所述分布式缓存中的报表生成请求消息之后, 若查询所述分布式 缓存中没有所述报表生成请求消息, 则查询所述第二数据库中是否存储有报表生成请求消 息, 若是, 则从所述第二数据库中提
9、取所述报表生成请求消息到分布式缓存中。 权 利 要 求 书 CN 103699557 A 3 1/4 页 4 报表处理方法及系统 技术领域 0001 本发明涉及数据处理技术领域, 尤其涉及一种报表处理方法及系统。 背景技术 0002 报表是企业管理的基本措施和途径, 是企业的基本业务要求, 也是实施商业智能 (Business Intelligence,以下简称BI) 战略的基础, 报表可以帮助企业访问、 格式化数据、 并把数据信息以可靠和安全的方式呈献给使用者, 深入洞察企业运营情况, 是企业发展的 强大驱动力。 0003 目前, 许多应用程序都将数据保存到数据库管理系统中, 当用户需要导出
10、报表时, 需先从数据库管理系统中查出所需要的数据然后才能导出。 而一般大型企业每天都有大量 的数据需要查看导出, 如果采用上述导出过程则费时费力, 而且随着访问数据量的增加, 也 会增加数据库管理系统的负担, 从而造成导出速度比较慢。 发明内容 0004 本发明提供一种报表处理方法及系统, 用于解决用户需要报表数据时都必须要登 录报表系统去查找和导出, 而且随着访问数据量的增加, 也会增加数据库管理系统的负担, 从而造成导出速度比较慢。 0005 本发明提供一种报表处理方法, 包括 : 0006 接收用户设备发送的报表生成请求消息, 所述报表生成请求消息中包含报表生成 规则和报表需求信息 ;
11、0007 将所述报表生成请求消息存储在分布式缓存中 ; 0008 定时查询所述分布式缓存中的报表生成请求消息, 并根据查询到的报表生成请求 消息从第一数据库中提取与所述报表需求信息匹配的报表数据, 并将所述报表数据存储在 所述分布式缓存中, 根据所述报表生成规则和报表数据在所述分布式缓存中生成报表 ; 0009 将生成的报表写入文件服务器, 以供所述用户设备从所述文件服务器下载所述报 表。 0010 本发明还提供一种报表处理系统, 包括 : 0011 接收模块, 用于接收用户设备发送的报表生成请求消息, 所述报表生成请求消息 中包含报表生成规则和报表需求信息 ; 0012 存储模块, 用于将所
12、述报表生成请求消息存储在分布式缓存中 ; 0013 生成模块, 用于定时查询所述分布式缓存中的报表生成请求消息, 并根据查询到 的报表生成请求消息从第一数据库中提取与所述报表需求信息匹配的报表数据, 并将所述 报表数据存储在所述分布式缓存中, 根据所述报表生成规则和报表数据在所述分布式缓存 中生成报表 ; 0014 写入模块, 用于将生成的报表写入文件服务器, 以供所述用户设备从所述文件服 务器下载所述报表。 说 明 书 CN 103699557 A 4 2/4 页 5 0015 本发明根据用户预设报表生成规则和报表需求信息自动生成报表数据, 将预先生 成的报表写入服务器供用户直接下载即可,
13、不需要用户每次需要报表数据时都要登录报表 系统去查找和导出, 而且, 根据用户预设报表生成规则和报表需求信息可以在系统空闲时 (例如深夜) 自动生成报表数据, 从而减少了系统负担。 附图说明 0016 图 1 为本发明提供的报表处理方法实施例一的流程图 ; 0017 图 2 为本发明提供的报表处理方法实施例二的流程图 ; 0018 图 3 为本发明提供的报表处理系统实施例一的结构图。 具体实施方式 0019 下面将结合本发明实施例中的附图, 对本发明实施例中的技术方案进行清楚、 完 整地描述, 显然, 所描述的实施例仅仅是本发明的一部分实施例, 而不是全部实施例。基于 本发明中的实施例, 本领
14、域普通技术人员在没有作出创造性劳动前提下获得的所有其他实 施例, 都属于本发明保护的范围。 0020 如图 1 所示, 为本发明提供的报表处理方法实施例一的流程图, 包括如下步骤 : 0021 S101、 接收用户设备发送的报表生成请求消息, 报表生成请求消息中包含报表生 成规则和报表需求信息 ; 0022 需要说明的是, 报表生成规则主要是指生成报表的格式、 类型等信息, 例如报表类 型可以为普通列表、 明细报表、 分组报表、 嵌套报表、 交叉报表、 图表报表、 树型列表、 树型控 件、 汇总报表等。报表需求信息主要是指用户需要提取的数据的生成日期以及需要提取的 数据的内容等。例如, 用户需
15、要制定有关 2013.8 月份车辆运行速度有关数据的报表, 则需 要在报表需求信息中携带上日期 2013.8.1 至 2013.8.30 和关键字车辆速度即可。 0023 S102、 将报表生成请求消息存储在分布式缓存中 ; 0024 这里, 将报表生成请求消息存储在分布式缓存中, 便于报表系统快速的提取报表 生成请求消息。 另外, 还可以将报表生成请求消息存储在第二数据库中。 当查询到分布式缓 存中没有报表生成请求消息时, 则查询第二数据库中是否存储有报表生成请求消息, 若是, 则从第二数据库中提取报表生成请求消息到分布式缓存中。这样, 当分布式缓存出现故障 时, 则系统还可以从数据库中提取
16、用户设备发送的报表生成请求消息。 0025 S103、 定时查询分布式缓存中的报表生成请求消息 ; 0026 具体来说, 报表系统会定时地从分布式缓存中查询报表生成请求消息, 并根据报 表生成请求消息从第一数据库中提取与报表需求信息匹配的报表数据, 并将报表数据存储 在分布式缓存中, 在分布式缓中, 根据报表生成规则和报表数据记过计算生成用户需要的 报表。 0027 S104、 将生成的报表写入文件服务器, 以供用户设备从文件服务器下载所述报表。 0028 当用户有空闲时, 可以登录报表系统根据需要从文件服务器上下载数据。 另外, 系 统将生成的报表写入文件服务器后, 可以给用户设备发送一个响
17、应消息来通知用户, 以便 用户及时下载查看。 其中, 响应消息中包含报表属性信息, 如报表大小、 报表格式、 生成时间 等等, 以便于用户预先了解报表的基本信息, 从而便于用户后续的报表管理工作。 说 明 书 CN 103699557 A 5 3/4 页 6 0029 本实施例将预先生成的报表写入服务器供用户直接下载即可, 不需要用户每次需 要报表数据时都要登录报表系统去查找和导出, 而且, 根据用户预设报表生成规则和报表 需求信息可以在系统空闲时 (例如深夜) 自动生成报表数据, 从而减少了系统负担。 0030 如图 2 所示, 为本发明提供的报表处理方法实施例二的流程图, 本实施例与实施
18、例一的区别在于, 本实施例除了包括实施例一中的方法步骤外还包括以下步骤 : 0031 S201、 接收用户设备发送的报表查询请求消息, 报表查询请求消息包括查询需求 信息 ; 0032 这里的查询需求信息主要是指用户要查询的报表生成所需要的日期和查询关键 字。例如, 用户想要查询 2013 年 8 月 7 号的车辆行程记录, 则需要在查询需求信息中包含 日期 2013.8.7 和内容车辆行程即可。 0033 S202、 根据查询需求信息从第一数据库中提取与查询需求信息匹配的数据 ; 0034 这里的第一数据库即为存储上述车辆数据的数据库。 0035 S203、 将查询到的数据存储在分布式缓存中
19、, 中根据系统默认规则和查询到的数 据在分布式缓存中生成报表 ; 0036 具体来说, 将查询到的数据存储在分布式缓存中, 并在分布式缓存中根据系统默 认规则和查询到的数据通过计算生成所需的报表。 0037 S204、 将分布式缓存生成的报表推送给用户设备。 0038 将生成的报表发送至用户设备进行显示。 0039 本实施例用户可以根据自己的需求查看报表数据, 当查看到有比较重要的数据需 要下载时, 则可以到预先生成报表的服务器上进行下载, 而不需要一次性导出查出的所有 数据, 从而减少了系统负担。 0040 如图 3 所示, 为本发明提供的报表处理系统实施例一的结构图, 主要包括以下模 块
20、: 0041 接收模块 31, 用于接收用户设备发送的报表生成请求消息, 报表生成请求消息中 包含报表生成规则和报表需求信息 ; 0042 存储模块 32, 用于将报表生成请求消息存储在分布式缓存中 ; 0043 生成模块 33, 用于定时查询分布式缓存中的报表生成请求消息, 并根据查询到的 报表生成请求消息从第一数据库中提取与报表需求信息匹配的报表数据, 并将报表数据存 储在分布式缓存中, 根据报表生成规则和报表数据在分布式缓存中生成报表 ; 0044 写入模块 34, 用于将生成的报表写入文件服务器, 以供用户设备从文件服务器下 载报表。 0045 上述报表处理系统还可以包括通信模块 35
21、, 用于在将生成的报表写入文件服务器 之后, 发送报表生成响应消息给用户设备, 以通知用户设备从所述文件服务器上下载所请 求的报表。其中, 响应消息中包含报表属性信息, 如报表大小、 报表格式、 报表生成时间等 等, 以便于用户预先了解报表的基本信息, 从而便于用户后续的报表管理工作。进一步地, 存储模块 32, 还用于将报表生成请求消息存储在第二数据库中。 0046 进一步地, 生成模块 33, 还用于在定时查询所述分布式缓存中的报表生成请求消 息之后, 若查询分布式缓存中没有报表生成请求消息, 则查询第二数据库中是否存储有报 表生成请求消息, 若是, 则从第二数据库中提取报表生成请求消息到
22、分布式缓存中。 说 明 书 CN 103699557 A 6 4/4 页 7 0047 本实施例的报表处理系统用于执行上述图 1 所示方法实施例的方案, 其实现原理 和技术效果类似, 此处不再赘述。 0048 在上述实施例的基础上, 进一步地 : 0049 接收模块 31, 还用于接收用户设备发送的报表查询请求消息, 报表查询请求消息 包括查询需求信息 ; 0050 生成模块 33, 还用于根据查询需求信息从第一数据库中提取与查询需求信息匹配 的数据 ; 0051 存储模块 32, 还用于将查询到的数据存储在分布式缓存中, 根据系统默认规则和 查询到的数据在分布式缓存中生成报表 ; 0052
23、通信模块 35, 还用于将分布式缓存生成的报表推送给用户设备。 0053 具体地, 该接收模块 31、 生成模块 33、 存储模块 32 以及通信模块 35 可以用于执行 上述图 2 所示方法实施例的方案, 其实现原理和技术效果类似, 此处不再赘述。 0054 本领域普通技术人员可以理解 : 实现上述各方法实施例的全部或部分步骤可以通 过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程 序在执行时, 执行包括上述各方法实施例的步骤 ; 而前述的存储介质包括 : ROM、 RAM、 磁碟 或者光盘等各种可以存储程序代码的介质。 0055 最后应说明的是 : 以上各实施
24、例仅用以说明本发明的技术方案, 而非对其限制 ; 尽管参照前述各实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解 : 其 依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征 进行等同替换 ; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技 术方案的范围。 说 明 书 CN 103699557 A 7 1/3 页 8 图 1 说 明 书 附 图 CN 103699557 A 8 2/3 页 9 图 2 说 明 书 附 图 CN 103699557 A 9 3/3 页 10 图 3 说 明 书 附 图 CN 103699557 A 10
copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1