• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 7
    • 下载费用:30 金币  

    重庆时时彩专家杀跨度: 一种基于中立格式的报表导出方法.pdf

    关 键 词:
    一种 基于 中立 格式 报表 导出 方法
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201310702709.1

    申请日:

    2013.12.19

    公开号:

    CN103793464A

    公开日:

    2014.05.14

    当前法律状态:

    驳回

    有效性:

    无权

    法律详情: 发明专利申请公布后的驳回IPC(主分类):G06F 17/30申请公布日:20140514|||实质审查的生效IPC(主分类):G06F 17/30申请日:20131219|||公开
    IPC分类号: G06F17/30 主分类号: G06F17/30
    申请人: 国家电网公司; 南京南瑞集团公司; 南京南瑞信息通信科技有限公司
    发明人: 蒋厚明; 孙昊; 胡牧; 任东晓; 贾波; 刘士进
    地址: 100031 北京市西城区西长安街86号
    优先权:
    专利代理机构: 南京知识律师事务所 32207 代理人: 汪旭东
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201310702709.1

    授权公告号:

    ||||||

    法律状态公告日:

    2017.09.26|||2014.06.11|||2014.05.14

    法律状态类型:

    发明专利申请公布后的驳回|||实质审查的生效|||公开

    摘要

    本发明公开了一种基于中立格式的报表导出方法,属于数据处理技术领域。本发明通过使用XML来对中立报表格式进行描述和展现,通过该方法,开发人员仅需针对中立报表格式开发导出程序,然后针对中立报表格式实现不同导出文件格式对应的解析器,即可实现报表导出多种第三方文件的功能。同时,当前端报表元素、布局设计等发生变化时,开发人员只需修改解析引擎部分,后端导出程序无需改动,即可将最新的报页面导出成各种格式,免去了开发人员在解析引擎中对导出部分重复开发,提高了已有代码的可复用性以及开发效率,实现了报表引擎的“一次编码,多种输出”。

    权利要求书

    权利要求书
    1.  一种基于中立格式的报表导出方法,其特征在于,包括以下步骤:
    1)对待导出的报表模板进行解析,获得该报表模板内部的所有报表元素以及该报表模板所含有的所有数据集,报表元素分为动态扩展元素和非扩展元素两种类型,每个动态扩展元素与其相对应的数据集相绑定;
    2)将获得的待导出的报表模板内部的所有报表元素解析为内存中的报表元素实例;
    3)根据获得的待导出的报表模板所含有的所有数据集,获取相应的数据集实例数据,并将获取的数据集实例数据缓存到内存中;
    4)将内存中的报表元素实例中的非扩展元素实例直接解析成中立报表格式中的文本单元格或者图片;
    5)将内存中的报表元素实例中的动态扩展元素实例解析成中立报表格式中的容器元素,并按照其绑定的数据集确定其需复制的数据集实例数据及其个数;
    6)利用步骤5)中确定的数据集实例数据及其个数,分别将每个容器元素内部的元素解析成文本单元格或者图片;
    7)将解析完成的中立报表格式按照XML格式导出为报表中立格式文件;
    8)根据最终需导出的文件格式,对XML格式的报表中立格式文件进行解析,得到相应格式的报表导出文件。

    2.  根据权利要求1所述的基于中立格式的报表导出方法,其特征在于,所述的中立报表格式中的文本单元格仅包含文本单元格的位置、大小、文字的内容、背景、字体和颜色信息,所述的中立报表格式中的图片仅包含图片的位置、大小、图片的内容和排列顺序信息。

    说明书

    说明书一种基于中立格式的报表导出方法
    技术领域
    本发明属于数据处理技术领域,更准确地说本发明涉及一种将报表展示页面导出为第三方通用文件格式(如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格式的报表中立格式文件进行解析,得到相应格式的报表导出文件。
    上述技术方案的进一步特征在于,所述的中立报表格式中的文本单元格仅包含文本单元格的位置、大小、文字的内容、背景、字体和颜色信息,所述的中立报表格式中的图片仅包含图片的位置、大小、图片的内容和排列顺序信息。
    本发明的有益效果如下:本发明先将报表解析为中立报表格式,再将中立报表格式导出为不同格式的第三方通用格式文件。通过发明,开发人员仅需针对中立报表格式开发导出程序,然后针对中立报表格式实现不同导出文件格式对应的解析器,即可实现报表导出多种第三方文件的功能。当前端报表元素、布局设计等发生变化时,开发人员只需修改解析引擎部分,后端导出程序无需改动,即可将最新的报页面导出成各种格式,免去了开发人员在解析引擎中对导出部分重复开发,提高了已有代码的可复用性以及开发效率,实现了报表引擎的“一次编码,多种输出”。同时,本发明还能够以较小代价灵活支持以后需导出的其它文件格式,无需为以后需导出的各个格式重新开发报表解析引擎,只需针对这些格式开发相应的解析器即可。而且,由于中立报表格式只含有最简单的文本和图片,且里面是已经计算好的文本,因此在最终导出时,只需要进行布局计算和输出文本,速度非???。本发明还能够为报表缓存提供条件,通常由于报表实例解析时间较长,可以利用本发明在服务端缓存中立报表格式,这样在面向最终用户时便可快速渲染出报表。
    附图说明
    图1为本发明方法的过程示意图。
    具体实施方式
    下面参照附图并结合实例对本发明作进一步详细描述。
    如图1所示, 本发明的基于中立格式的报表导出方法,主要包括两个过程,即先将报表解析为中立报表格式,再将中立报表格式导出为不同格式的第三方通用格式文件。由于报表解析后并不会直接导出为最终文件,而是解析为中立报表格式,而中立报表格式主要用来描述实际报表绘制页面的元素,构成报表页面的各元素之间又具有层次和嵌套关系,这与XML文档中元素和属性之间的关系十分相似,同时,由于XML具有非常好的通用性、扩展性和跨平台性,因此本发明使用XML来描述中立报表格式。
    具体而言,本发明包括以下步骤:
    1)对待导出的报表模板进行解析,获得该报表模板内部的所有报表元素以及该报表模板所含有的所有数据集,报表元素分为动态扩展元素和非扩展元素两种类型,每个动态扩展元素与其相对应的数据集相绑定;
    2)将获得的待导出的报表模板内部的所有报表元素解析为内存中的报表元素实例;
    3)根据获得的待导出的报表模板所含有的所有数据集,获取相应的数据集实例数据,并将获取的数据集实例数据缓存到内存中;
    4)将内存中的报表元素实例中的非扩展元素实例直接解析成中立报表格式中的文本单元格或者图片;
    5)将内存中的报表元素实例中的动态扩展元素实例解析成中立报表格式中的容器元素,并按照其绑定的数据集确定其需复制的数据集实例数据及其个数;
    6)利用步骤5)中确定的数据集实例数据及其个数,分别将每个容器元素内部的元素解析成文本单元格或者图片;
    7)将解析完成的中立报表格式按照XML格式导出为报表中立格式文件;
    8)根据最终需导出的文件格式,对XML格式的报表中立格式文件进行解析,得到相应格式的报表导出文件。
    上述中立报表格式中的文本单元格仅包含文本单元格的位置、大小、文字的内容、背景、字体和颜色信息,所述的中立报表格式中的图片仅包含图片的位置、大小、图片的内容和排列顺序信息。
    在解析时,用XML来描述报表中立格式具体内容,第一行对报表中立格式进行声明,定义XML版本为1.0,所使用编码为UTF-8。文档中含有Document、Page、Container、TextBox、Image等元素。
    第二行,描述该文档的根元素,定义根元素的名称为“Document”,并为其定义属性,包括:
    在“Document”元素上定义名为“name”的属性,以指定文档所对应的报表模板的名称。
    在“Document”元素上定义名为“lastModifyTime”的属性,以指定文档的最后修改时间。
    在“Document”元素上定义名为“lastModifyTime”的属性,以指定文档的最后修改时间。
    在“Document”元素上定义名为“xmlns”的属性,以指定该文档的命名空间。
    文档实际是由多个页面组成,因此在根元素“Document”下定义名为“Page”的元素,并为其定义属性,包括:
    在“Page”元素上定义名为“name”的属性,以指定页面的名称,页面的名称与模板中页面的名称相同。
    在“Page”元素上定义名为“width”的属性,以指定页面的宽度,该属性的值可以为数字也可为“auto”,默认为“auto”,即自动计算。
    在“Page”元素上定义名为“height”的属性,以指定页面的高度,该属性的值可以为数字也可为“auto”,默认为“auto”,即自动计算。
    在“Page”元素上定义名为“margins”的属性,以指定页面的边距。
    在“Page”元素上定义名为“counts”的属性,以指定所含元素的个数,缺省为0。
    在“Page”元素上定义名为“metric”的属性,以指定页面的度量单位,该属性的值可以为“millimeter”、“inch”、“hinch”之一,默认为“millimeter”,即毫米。
    每一个“Page”都包含了若干个元素,“Page”下可包含“Container”、“TextBox”、“Image”等元素。
    在“Container”元素上定义名为“counts”的属性,以指定包含元素的个数。
    在“Container”元素上定义名为“x”的属性,以指定容器的x坐标。
    在“Container”元素上定义名为“y”的属性,以指定容器的y坐标。
    在“Container”元素上定义名为“width”的属性,以指定容器的宽度,该属性的值可以为数字也可为“auto”,默认为“auto”,即自动计算。
    在“Container”元素上定义名为“height”的属性,以指定容器的高度,该属性的值可以为数字也可为“auto”,默认为“auto”,即自动计算。
    在“Container”元素上定义名为“bkground”的属性,以指定容器背景色。
    在“TextBox”元素上定义名为“x”的属性,以指定文本框的x坐标。
    在“TextBox”元素上定义名为“y”的属性,以指定文本框的y坐标。
    在“TextBox”元素上定义名为“width”的属性,以指定文本框的宽度。
    在“TextBox”元素上定义名为“height”的属性,以指定文本框的高度。
    在“TextBox”元素上定义名为“text”的属性,以指定文本框的内容。
    在“TextBox”元素上定义名为“font”的属性,以指定文本框包含文字的字体。
    在“TextBox”元素上定义名为“color”的属性,以指定文本框包含文字的颜色。
    在“TextBox”元素上定义名为“bkground”的属性,以指定文本框背景色。
    在“Image”元素上定义名为“x”的属性,以指定图片的x坐标。
    在“Image”元素上定义名为“y”的属性,以指定图片的y坐标。
    在“Image”元素上定义名为“width”的属性,以指定图片的宽度。
    在“Image”元素上定义名为“height”的属性,以指定图片的高度。
    在“Image”元素上定义名为“align”的属性,以指定图片的排列顺序。
    在“Image”元素上定义名为“content”的节点,以指定图片的内容,为Base64格式的字符串。
    虽然本发明已以较佳实施例公开如上,但实施例并不是用来限定本发明的。在不脱离本发明之精神和范围内,所做的任何等效变化或润饰,同样属于本发明之?;し段?。因此本发明的?;し段вΦ币员旧昵氲娜ɡ笏缍ǖ哪谌菸曜?。

    关于本文
    本文标题:一种基于中立格式的报表导出方法.pdf
    链接地址://www.4mum.com.cn/p-6156992.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 快乐12开奖开奖结果 鲁能中超赛程 捕鱼大师下载 湖北快三 澳洲幸运8开奖号码 意甲排名胜负关系 新疆时时彩号码走势图 安徽快三三同号推荐 广东36选7开奖好彩3 手机麻将怎么防止作弊 舟山飞鱼和海南飞鱼 今天3d开奖号码 时时彩缩水工具手机 贵州快三的开奖结果 865棋牌连连棋牌 5月9日福彩中奖号