基于WordXML技术实现Word报表自动生成

来源 :中国新通信 | 被引量 : 0次 | 上传用户:dwddKTV
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】 本文对比了常用的Word报表生成技术的特点,介绍了基于WordXML技术实现Word报表的优势和流程,并以一个实际应用中的范例给予了说明。
  【关键词】 Word报表 WordXML 自动生成
  自动化办公系统中,报表组件是必不可少的组成部分。报表组件的种类繁多,使用的技术也不尽相同。常用的商业化报表组件功能强大,支持多种输出格式,但与Word格式完美兼容的不多。在一些习惯使用Word作为办公文档的单位中,Word报表的生成技术仍然不可或缺。
  一、Word报表生成技术对比
  Word报表的生成技术大致分为两类:。
  (一)使用COM接口操作Word对象。该方法可以充分利用微软提供的API实现各种复杂的操作,但也存在明显的不足。首先,应用程序依赖Office COM接口意味着报表生成过程无法脱离Office运行环境,从而无法实现跨平台;其次,Office COM接口的执行效率一直为开发者和使用者所诟病;再次COM技术较为复杂,一般用户难以完成报表模板的定义工作。
  (二)使用XML技术操作Word XML对象。该方法是Office2003以上版本支持的方法,该方法的共同点是报表的生成不再依赖Office接口,而且效率极高。该类方法又可细分为两种。一种方法是使用类似FreeMarker的模板引擎来生成Word报表。该方法要求精通XML技术的开发人员使用XML编辑器来定义模板,模板定义好后不再支持使用Office对此文档进行再编辑,也不方便开发人员修改模板;另一种方法是使用WordProcessingXML(简称WordML)技术来生成Word报表。该方法中使用的模板可以通过Office直接定义,这样既降低了开发难度,同时也方便了用户对模板的二次定制和数据复用。
  二、基于WordXML技术的Word报表生成流程
  报表的生成一般方法是通过某种规则将数据自动填充到预定的报表模版中。基于WordXML技术的Word报表生成流程一般分为四步:
  (一)根据报表数据生成XML架构文件。报表中填充的数据必须是定义良好的XML文档,而对XML文档格式的最佳描述是XML架构文件(XSD文件)。Word模板定义过程的依据即是XML数据的架构文件。XML架构文件的生成方法很多,Visual Studio中提供的XSD命令可以根据实体类生成对应的XSD;XMLSpy软件可以通过XML数据文件自动生成架构文件。
  (二)定义Word报表模板文件。首先打开Word软件,新建或选择Word模板文件,导入第一步中生成的XML架构文件;然后通过鼠标将XML架构中的节点与模板中的内容一一对应起来,注意要按照先父节点后子节点的顺序进行操作;最后将模板保存为XML格式。
  (三)生成XSLT转换文件。Word报表模板是XML文件,Word报表也是XML文件。我们可以使用扩展样式表语言(XLST)自动完成模版文件到报表文件的自动转换。微软提供了由模板生成XLST文件的工具(WML2XSLT,可以从微软提供的Word 2003:XML SDK中下载),该工具提供了命令行接口完成XLST文件的自动生成。
  (四)使用报表数据生成最终报表。有了XLST文件,就可以将定义良好的XML数据直接转换为最终报表。我们可以使用任何一种支持XML的编程语言编写报表生成程序,也可以使用第三方XML编辑器完成自动转化(如XMLSpy等)。
  三、实际应用举例
  我们以个人信息报告表为例来说明报表的生成流程。报告表中所使用的人员数据主要包括基本信息、培训履历和工作履历三部分内容,如图1所示。其中,基本信息包含了姓名、性别、出生时间等十几个信息项;培训履历最多允许填写四条记录,主要包含了起始时间、终止时间、院校名称、所学专业和获得学位5个信息项。
  报告表模板中包含了多个表格。Word使用粉红色文本框(可以隐藏)显示XML文章中节点与文章中位置的对应关系格的某个单元格,如图2所示:基本信息中的每一个信息项对应了表格中的某个单元格;培训履历记录对应了第二个表格中的明细行。 根据XML格式人员数据生成报告表后,人员数据将替图2中的标签。如果培训履历中有多条记录,则会在对应表格中新插入新行以显示数据。
  四、结语
  基于WordXML技术的Word报表生成方法不仅简单易上手,而且具有良好的可扩展性。虽然自Office 2012后Word不再支持这种定义机制,但此方法仍有不少的应用场景。




  参 考 文 献
  [1] Microsoft Corporation. Overview of WordprocessingML[EB/OL]. http://rep.oio.dk/Microsoft.com/officeschemas/ welcome.htm,2015-3
  [2] W3School. XSLT 教程[EB/OL].http://www.w3school.com.cn/xsl/index.asp, 2015-3
  [3] 唐雪梅. 利用XML格式解析原理批量进行成果资料格式检查. 物探化探计算技术[J],2013(05):617.
其他文献
摘 要: 陕西省高校英语教学中仍然存在一些问题,本文将首先对这部分内容进行分析,同时借鉴培训机构的教学模式,分别提出高校英语教学改善课堂氛围、丰富知识结构、利用课后时间、培养学习兴趣等路径,为同行业教师提供帮助与借鉴。  关键词: 陕西高校 英语教学 培训机构 教学模式  引言  陕西省高等教育资源极为丰富,在校生数量已经超过百万。同时陕西省的国际旅游发展迅猛,仅2018年上半年就接待了国外游客1
"以篇带本"的"引子范本"教学,以"三位一体"为导向,打破课堂局限,实现课外阅读课内化的教学目标。文章以统编版语文第七册第三单元《蟋蟀的住宅》教学为例,从"紧扣结点,链接阅
针对激光切割过程中的主要参数,切割速度,版材厚度,辅助气压的大小以及激光器功率的选择,建立了一个基于遗传算法的人工神经网络结构。实验结果表明,该方法将遗传算法和神经网络的
传统食品溯源系统数据层均由核心企业维护的关系型数据库组成,无法保证数据的安全性,且效率低、维护成本高。食品供应链参与主体众多,消费者购买到有质量问题食品往往维权困
当前小学数学教学水平较之以往已经有了一定程度提升,部分创新教学法在实际教学中也得到了有效应用。但学生自主学习能力培养视角下,教学中的不足越发显著,整体教学也并未对
肠易激综合征(irritable bowel syndrome,IBS)是一种无器质性病变的功能性肠病,主要表现为反复腹痛并伴排便异常或排便习惯的改变,我国以腹泻型IBS(IBS-D)为主[1]。IBS-D发病
目的探讨白芍总苷(TGP)对大鼠脑缺血再灌注(I/R)损伤的保护作用及其机制。方法将240只SD大鼠按照随机数字表法分为假手术组、模型组、TGP低(50mg/kg)、中(100mg/kg)、高(200m
引入工作流技术对制造企业的采购质量管理体系进行了分析与研究,建立了制造企业采购质量管理的过程模型并基于Petri网构造了其工作流模型.采用J2EE平台设计开发了基于工作流
无基础快装塔由于其产品特点,快速适应了移动通信技术的发展要求,符合环保节约型的发展理念,对目前已有无线网络疑难站点的解决起到了不可或缺的作用。通过对塔身和机房一体化技
通过将3G移动通信技术应用于智能交通指挥控制系统,并利用发展迅速的3G移动通信网组成3G无线局域网来传输各交通路口信号点的视频和控制信息,为智能交通指挥系统组网提供了一条