---
title: "移动办公人员的数据交换"
date: "2012-02-01"
categories: 
  - "data-integration"
tags: 
  - "software-tools"
  - "stylevision"
  - "xml-reports"
  - "xml-to-database"
description: 了解如何通过Altova的StyleVision和Authentic产品，通过创建和管理与IT系统集成的电子表格单，实现移动工作团队高效的数据交换。
---
Status: #blog

Tags:  #software-tools #stylevision #xml-reports #xml-to-database

Categories: [data-integration](/blog/zh/category/data-integration.md)
# 移动办公人员的数据交换

为了适应日益增长的移动工作队伍，许多组织不得不调整其内部业务流程。虽然存在一些技术解决方案可以满足当今的许多沟通需求，但由于组织内部使用的文档格式多种多样，一些任务仍然令人困扰。例如，一个组织如何在保持灵活性的同时，方便移动员工之间的数据交换，同时又能将这些数据导入到内部IT系统中？ 

Altova 提供了一种经济实惠的解决方案，即 StyleVision®，这是一款图形化样式表和报表设计工具，同时具备电子表单功能；此外，还有 Authentic®，这是一款所见即所得的 XML 和数据库编辑器，用户可以通过它查看和编辑在 StyleVision 中创建的电子表单。 

Authentic Community Edition 版本是： [该软件可在Altova网站上免费下载](https://www.altova.com/zh/download/authentic/xml_db_form_editor_desktop.html) 这样，无论对方是您组织内部的员工还是外部的合作伙伴，都可以轻松地融入您的工作流程。

[![(图片已剪辑)](https://lh5.ggpht.com/-0BIdbup1WCI/TylxslyNu9I/AAAAAAAAASw/J4lIVPv9lB0/clip_image002_thumb%25255B2%25255D.jpg?imgmax=800 "clip_image002")](http://lh3.ggpht.com/-PevmyQqyxCU/Tylxr4M21qI/AAAAAAAAASo/9UDb6MHeRP0/s1600-h/clip_image002%25255B7%25255D.jpg)

在这篇文章中，我们将通过一个案例展示如何创建一个电子表单，使其与现有的纸质表单（在本例中，是一个报销表）保持一致。然后，我们将跟踪这个电子表单在一家虚构组织中的使用流程。请注意，我们在此使用的示例非常简单，其目的是为了说明开发和部署电子表单的过程。虽然您可以在StyleVision中添加更多的数据源，并进行验证和其他复杂功能，但我们在此没有详细说明。在StyleVision中设计电子表单非常简单。要开始，只需从“文件”菜单中选择“新建”->“从XML模式/DTD/XML...”，浏览到XML模式文件，然后选择您想要创建的设计类型。在这个例子中，我们在Altova公司的XMLSpy中创建了一个XML模式文件和实例文件 [XML 编辑器和开发环境](https://www.altova.com/zh/xmlspy.html), 基于报销表格中的字段，您也可以基于数据库或XBRL分类体系来设计StyleVision。以下是我们将使用的报销表格的副本，以及我们创建的XML模式。

[![(图片已剪辑)](https://lh5.ggpht.com/-8SMJRzV77pU/TylxtoN9vcI/AAAAAAAAAS8/NAZxprm7rRs/clip_image002_thumb%25255B3%25255D.jpg?imgmax=800 "clip_image002")](http://lh5.ggpht.com/-xMTIo-wF2WM/TylxtZOWYqI/AAAAAAAAAS0/1ss8cIyDe-c/s1600-h/clip_image002%25255B8%25255D.jpg)

[![(图片已剪辑)](https://lh5.ggpht.com/-YINM9ih5A2M/Tylxv-TwBzI/AAAAAAAAATQ/Gpx5etVG2dY/clip_image003_thumb%25255B1%25255D.png?imgmax=800 "clip_image003")](http://lh6.ggpht.com/-s_AeRtjGdzU/TylxuW33DGI/AAAAAAAAATI/6r7FC3vRC-c/s1600-h/clip_image003%25255B4%25255D.png)

在StyleVision中选择XML文件后，系统会提示我们选择是创建自由布局文档还是基于表单的文档。在基于表单的文档中，所有设计元素（例如，用于用户输入的文本框、图像、按钮）的位置都是固定的，这非常适合数据录入表单。当我们创建基于表单的文档时，我们可以上传一张“蓝图图像”，以便我们能够完全还原原始纸质表单的设计。我们选择了这个选项，具体内容见下文。这张图像将显示在设计窗口的背景中，我们只需将设计元素放置在与表单上相应元素的位置。当然，蓝图图像的叠加效果不会出现在最终输出结果中。

[![(图片已剪辑)](https://lh6.ggpht.com/-PiQaOk6tDSU/TylxxN1QjNI/AAAAAAAAATg/oR1i9RGhxVc/clip_image004_thumb%25255B1%25255D.png?imgmax=800 "clip_image004")](http://lh3.ggpht.com/-pH9kumjNQb8/TylxwpQDq5I/AAAAAAAAATY/3TsS7DDLUJo/s1600-h/clip_image004%25255B4%25255D.png)

以下截图展示了在StyleVision的设计窗口中，蓝图图像的显示效果——是不是很棒？ 

[![(图片已剪辑)](https://lh3.ggpht.com/-z73sUFqvsTY/TylxzIKlmuI/AAAAAAAAAT4/m316wAKAr-Q/clip_image005_thumb%25255B1%25255D.png?imgmax=800 "clip_image005")](http://lh3.ggpht.com/-zpBDNYlFAyg/Tylxx4G6LeI/AAAAAAAAATs/3BQqU4W4Tm0/s1600-h/clip_image005%25255B4%25255D.png)

现在，我们可以使用位于顶部的“插入”菜单，将设计元素直接插入到设计窗口中的蓝图图像上。可用的设计元素包括表单控件（例如，输入框、下拉列表、单选按钮）、图像、表格、图表，以及“布局容器”，用于精确地定位元素。

我们首先添加输入框，用于收集员工信息（例如，姓名、姓氏、职位等，这些信息位于表单的顶部）。点击“插入”->“插入表单控件”，然后选择“输入框”，会弹出一个“插入设计元素”对话框。

在下面的对话框中，我们已经高亮显示了“姓名”元素。现在，这个输入框将与“姓名”元素关联起来。 这样，当最终用户在输入框中输入数据并保存表单时，这些信息将填充到 XML 文件中的“姓名”元素中。

[![(图片已剪辑)](https://lh6.ggpht.com/-hLEflFy1sJM/Tylx0LpM5BI/AAAAAAAAAUE/QCVAwLktES0/clip_image006_thumb%25255B1%25255D.png?imgmax=800 "clip_image006")](http://lh5.ggpht.com/-QUkLxSHiyyQ/Tylxzmp1ZDI/AAAAAAAAAUA/AdyDzJnw8us/s1600-h/clip_image006%25255B4%25255D.png)

现在，我们将在整个表单中添加设计元素，并将输入字段与其对应的 XML 文件中的元素关联起来。当完成所有输入字段的添加后，一个logo、线条、用于显示费用项目的表格以及标签等设计元素将呈现出以下效果。为了更清晰地查看设计元素，我们已将蓝图图片的透明度设置为0。此外，我们还进行了一些额外的设计工作，例如在日期字段中添加了日历、添加了下拉菜单，以及根据用户输入自动变化的货币符号。有关如何进一步优化您的表单，请参阅 StyleVision 应用程序中的 StyleVision 用户和参考手册。

[![(图片剪辑)](https://lh5.ggpht.com/-NcEKgP1bloM/Tylx0_ywOhI/AAAAAAAAAUY/4GeDFsaqALE/clip_image007_thumb%25255B1%25255D.png?imgmax=800 "clip_image007")](http://lh6.ggpht.com/-6y0s0Fw7DwM/Tylx0c6fXWI/AAAAAAAAAUM/kXNi7-6jlkU/s1600-h/clip_image007%25255B4%25255D.png)

我们可以通过点击设计窗口底部的“Authentic eForm”选项卡来预览最终用户将如何看到我们在StyleVision中设计好的表单。请注意，最终用户将被提示直接在每个数据输入字段中输入数据。我们通过在与我们的设计相关的XML文件中，将提示信息（例如“输入姓名”）放置在相关的标签之间来实现这一点。最终用户只需选中提示信息，然后将其替换为文本即可。

[![(图片剪辑)](https://lh6.ggpht.com/-BzpjcpBQ1Mk/Tylx2JqE0mI/AAAAAAAAAUk/b3DXBvOeuXg/clip_image008_thumb%25255B1%25255D.png?imgmax=800 "clip_image008")](http://lh6.ggpht.com/-ptt0UtL62Lg/Tylx1iVid9I/AAAAAAAAAUg/Qu_ADFN7oBg/s1600-h/clip_image008%25255B4%25255D.png)

一旦我们完成报销表格的设计，我们可以将整个设计——包括 XML 模式和实例文件、图像以及任何其他相关文件——以单个 PXF®（便携式 XML 表格）的形式保存。将设计保存为 PXF 后，我们可以通过电子邮件将该表格以及底层 XML 表格中的更新数据发送给公司内部和外部的人员。

[![(图片已剪辑)](https://lh3.ggpht.com/-O0d5WlE1mSA/Tylx2-b6WVI/AAAAAAAAAU0/Y5BiYvb0vIk/clip_image009_thumb%25255B1%25255D.png?imgmax=800 "clip_image009")](http://lh3.ggpht.com/-VMZmAOAgRk8/Tylx2pKvf0I/AAAAAAAAAUs/UhLjbQI7JC4/s1600-h/clip_image009%25255B4%25255D.png)

点击“确定”后，系统会提示我们选择要包含在 PXF 文件中的文件。请注意，我们在“生成和存储 XSLT 文件”这一部分选择了 HTML、RTF、PDF 和 Word 2007 及以上版本的文件。这样，最终用户可以直接从 Authentic 系统，以这些格式生成包含数据的表单。

[![(图片剪辑)](https://lh6.ggpht.com/-e2J8FrTol9g/Tylx3lPSJzI/AAAAAAAAAVI/MgA_NqZXJwc/clip_image010_thumb%25255B1%25255D.png?imgmax=800 "clip_image010")](http://lh3.ggpht.com/-J86iYroLYSs/Tylx3NPVeCI/AAAAAAAAAVA/oL949YN13jI/s1600-h/clip_image010%25255B4%25255D.png)

现在，我们已经将数据保存为 PXF 格式，这意味着我们在 StyleVision 中设计的电子表格已经准备好在商业环境中应用。在我们的例子中，我们有一支遍布全球的销售团队，他们需要报销因商务和差旅而产生的费用。销售人员填写费用报表，然后将报表发送给他们的经理进行审批，审批通过后，他们会将报表发送到公司总部，以便将相关信息添加到会计系统中。

PXF系统让这一过程变得非常简单。当销售人员准备好提交报销申请时，她只需在Authentic系统中打开PXF，就可以立即开始在表格中填写信息。以下是Authentic系统中已完成填写的一个报销表格的截图，请注意，该表格仍然需要主管的签名。

[![(图片剪辑)](https://lh6.ggpht.com/-PqHJjTayqHQ/Tylx42HpMPI/AAAAAAAAAVU/WoTlq4VUg3g/clip_image011_thumb%25255B1%25255D.gif?imgmax=800 "clip_image011")](http://lh4.ggpht.com/-4xV4NlMmEMM/Tylx4YLRgNI/AAAAAAAAAVQ/88HKRf0Duxc/s1600-h/clip_image011%25255B4%25255D.gif)

现在，销售人员必须将此表单发送给她的主管进行审批。可以直接从Authentic系统发起一封邮件，并将表单作为附件发送。 

[![(图片剪辑)](https://lh3.ggpht.com/-nwJcmO8vH_I/Tylx7fSozXI/AAAAAAAAAVo/3wdy8d1Qztg/clip_image013_thumb%25255B1%25255D.jpg?imgmax=800 "clip_image013")](http://lh5.ggpht.com/-FEkZyQ8nNto/Tylx5M-76XI/AAAAAAAAAVg/KZVEed6FUts/s1600-h/clip_image013%25255B4%25255D.jpg)

一旦经理收到邮件，她只需双击附件，即可在Authentic软件中打开。在这里，经理已经勾选了“已批准”复选框，并添加了自己的姓名和日期。

[![(图片剪辑)](https://lh3.ggpht.com/-D1b3X6JNTvA/Tylx8DplILI/AAAAAAAAAV4/v-6i22w2TRE/clip_image014_thumb%25255B1%25255D.png?imgmax=800 "clip_image014")](http://lh4.ggpht.com/-txmoksF37EI/Tylx70wPKXI/AAAAAAAAAVw/8WE22SRVBj4/s1600-h/clip_image014%25255B4%25255D.png)

经理可以将更新后的费用报销单（PXF）通过电子邮件发送回销售人员，销售人员再将它发送到公司总部，以便将其导入到会计系统中进行处理。当然，我们虚构的公司总部每天会收到数百份报销申请，并且已经建立了一个流程，将这些申请导入到会计系统中的相关Oracle数据库中。我们将使用Altova MapForce，这是一款图形化 [一种用于数据映射、转换和转化的通用工具，可处理各种类型的数据](https://www.altova.com/zh/mapforce.html), 为了将报价数据导入企业数据库，我们需要进行数据映射。设置好映射关系后，我们将自动从 MapForce 生成代码，从而实现数据转换的自动化，无论是通过批量处理还是实时转换。

首先，我们将进行数据映射的设置。我们已将从 PXF 中提取的 XML 文件“ExpRpt”导入到 MapForce 设计窗口的左侧，并将 Oracle 数据库导入到设计窗口的右侧。现在，我们可以将 XML 文件中包含报销数据的字段拖动到 Oracle 数据库中。我们还可以进行数据转换，就像我们对“Approved”元素所做的那样。在这里，我们使用了内置的布尔函数，将 XML 文件中存储的字符串值（“true”或“false”）转换为相应的数值（1 或 0）。我们还可以创建自定义函数。我们创建的映射关系如下所示。

[![(图片剪辑)](https://lh4.ggpht.com/-xVl2FP0BPFI/Tylx9VhN53I/AAAAAAAAAWI/7Y4ZMOGxQOw/clip_image015_thumb%25255B1%25255D.png?imgmax=800 "clip_image015")](http://lh6.ggpht.com/-ScqUKOBXByQ/Tylx8wyZcCI/AAAAAAAAAWA/-VpEFnE6YoM/s1600-h/clip_image015%25255B4%25255D.png)

