[发明专利]一种基于中立格式的报表导出方法在审
申请号: | 201310702709.1 | 申请日: | 2013-12-19 |
公开(公告)号: | CN103793464A | 公开(公告)日: | 2014-05-14 |
发明(设计)人: | 蒋厚明;孙昊;胡牧;任东晓;贾波;刘士进 | 申请(专利权)人: | 国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京知识律师事务所 32207 | 代理人: | 汪旭东 |
地址: | 100031 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 中立 格式 报表 导出 方法 | ||
技术领域
本发明属于数据处理技术领域,更准确地说本发明涉及一种将报表展示页面导出为第三方通用文件格式(如Pdf、Word、Excel、Html)的方法。
背景技术
如今,不管是在企业级信息系统中,还是在SaaS应用中,报表都已经是一个非常重要的组成部分。报表一般通过报表模板及其含有的数据集实现。报表模板中的报表元素可分为动态扩展元素和非扩展元素两种类型:动态扩展元素指可以与数据集绑定的元素,解析时会根据数据集的数量复制扩展;非扩展元素不能与数据集绑定,其解析时只能作为静态元素解析。通过将动态扩展元素和非扩展元素相结合,可为用户提供多层次、具备复杂表格展现能力的报表系统。报表能够为用户提供可视化的信息展现、提升系统的易用性、促进用户的数据录入,而报表的导出是报表系统中的一个必备功能。
报表导出通常指为将报表展示页面导出为诸如Word、PDF、Excel、Html等第三方的通用文件格式。然而,在现有的报表系统中,往往采取定制的方式针对每一种格式都开发相对应的导出程序。这种做法导致大量的重复编码工作,费时费力。因此,如何快速、高效地改善报表导出的方式已成为开发人员关注的焦点。
在许多领域中常使用XML来存储和传输数据信息。XML是指可扩展标记语言(Extensible Markup Language),它是一种标记语言。与主要用于表现和展示数据的HTML语言不同的是,XML被设计用来传送及携带数据。XML于1998年2月发布为W3C标准,时至今日,它已被公认为优秀的数据描述语言。它是各种应用程序之间进行数据传输的最常用的工具,并且在信息存储和描述领域变得越来越流行。目前可以很方便地将XML格式的文件转换得到如Word、PDF、Excel、Html等第三方的通用文件格式的文件。
发明内容
本发明的目的是:针对现有报表系统中的需要对每一种格式都开发相对应的导出程序、开发费时费力的问题,提供一种基于中立格式的报表导出方法。
具体地说,本发明是采用以下的技术方案来实现的,包括以下步骤:
1)对待导出的报表模板进行解析,获得该报表模板内部的所有报表元素以及该报表模板所含有的所有数据集,报表元素分为动态扩展元素和非扩展元素两种类型,每个动态扩展元素与其相对应的数据集相绑定;
2)将获得的待导出的报表模板内部的所有报表元素解析为内存中的报表元素实例;
3)根据获得的待导出的报表模板所含有的所有数据集,获取相应的数据集实例数据,并将获取的数据集实例数据缓存到内存中;
4)将内存中的报表元素实例中的非扩展元素实例直接解析成中立报表格式中的文本单元格或者图片;
5)将内存中的报表元素实例中的动态扩展元素实例解析成中立报表格式中的容器元素,并按照其绑定的数据集确定其需复制的数据集实例数据及其个数;
6)利用步骤5)中确定的数据集实例数据及其个数,分别将每个容器元素内部的元素解析成文本单元格或者图片;
7)将解析完成的中立报表格式按照XML格式导出为报表中立格式文件;
8)根据最终需导出的文件格式,对XML格式的报表中立格式文件进行解析,得到相应格式的报表导出文件。
上述技术方案的进一步特征在于,所述的中立报表格式中的文本单元格仅包含文本单元格的位置、大小、文字的内容、背景、字体和颜色信息,所述的中立报表格式中的图片仅包含图片的位置、大小、图片的内容和排列顺序信息。
本发明的有益效果如下:本发明先将报表解析为中立报表格式,再将中立报表格式导出为不同格式的第三方通用格式文件。通过发明,开发人员仅需针对中立报表格式开发导出程序,然后针对中立报表格式实现不同导出文件格式对应的解析器,即可实现报表导出多种第三方文件的功能。当前端报表元素、布局设计等发生变化时,开发人员只需修改解析引擎部分,后端导出程序无需改动,即可将最新的报页面导出成各种格式,免去了开发人员在解析引擎中对导出部分重复开发,提高了已有代码的可复用性以及开发效率,实现了报表引擎的“一次编码,多种输出”。同时,本发明还能够以较小代价灵活支持以后需导出的其它文件格式,无需为以后需导出的各个格式重新开发报表解析引擎,只需针对这些格式开发相应的解析器即可。而且,由于中立报表格式只含有最简单的文本和图片,且里面是已经计算好的文本,因此在最终导出时,只需要进行布局计算和输出文本,速度非常快。本发明还能够为报表缓存提供条件,通常由于报表实例解析时间较长,可以利用本发明在服务端缓存中立报表格式,这样在面向最终用户时便可快速渲染出报表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司,未经国家电网公司;南京南瑞集团公司;南京南瑞信息通信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310702709.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种处理车载终端海量数据的方法和系统
- 下一篇:数据库数据迁移方法及系统