Microsoft Office InfoPath 2003 常见技术问题

本页内容
InfoPath 一般信息InfoPath 一般信息
InfoPath 对其他工具InfoPath 对其他工具
InfoPath 和标准InfoPath 和标准
InfoPath 2003 编辑模式InfoPath 2003 编辑模式
InfoPath 设计模式InfoPath 设计模式
InfoPath 部署InfoPath 部署

InfoPath 一般信息

问:什么是 InfoPath 2003?
答:

Microsoft® Office InfoPath™2003 是 Microsoft Office System 中的新程序,它可帮助您使用丰富的动态表单灵活有效地收集信息。您可以在企业或团队内更有效地共享、重用信息或改变信息的用途,提高团队协作和决策制定的能力,对您的业务产生积极的影响。


更灵活、有效地收集信息

InfoPath 提供了一种灵活有效的方法,可以收集有用信息以做出更好的决策。

使用 InfoPath,用户可在第一时间收集到带有数据验证、屏幕提示和条件格式的正确信息。

可对捕获的信息进行个性化设置。如果您想使收集的信息更有意义,则可以在表单中添加节。

允许在线或离线处理表单,因而可以方便地随时随地收集和管理信息。

用户的工作环境是熟悉的 Microsoft Office System 环境,可最小化培训时间,同时还提供了一些写作辅助功能,如拼写检查、字体格式设置以及其他一些用户熟悉的工具。


更有效地连接人员、信息和流程

InfoPath 使企业或小组可以轻松地重复使用所收集的信息或改变信息的用途。然后便可在业务流程和企业间共享信息。

支持 XML Web 服务,因而可以在系统和流程间共享、重复使用信息以及改变信息的用途。

将 InfoPath 2003 与 Microsoft Windows® SharePoint™ 结合起来,提高了团队的协作能力。


易于开发和部署丰富的动态表单

使用 InfoPath,可以在企业间轻松地创建强大的表单解决方案,同样还能轻松地部署和维护表单解决方案。

用户可以在 WYSIWYG (“所见即所得”) 的设计模式中为收集的信息构建自己的表单或使用 25 个现成的示例构建表单。

不用编写代码,便可以在表单中包含强大的功能 (如数据校验)。

使用客户定义的现有架构创建表单解决方案。

将表单发布到共享网络文件夹、Web 服务器、Windows SharePoint Services 表单库或通过电子邮件发送表单。

可确保始终使用静默方式和自动方式下载最新表单。

问:InfoPath 如何适应 Microsoft 的 .NET 战略要求?InfoPath 如何成为 XML Web 服务的“智能客户端”?
答:

Microsoft .NET 是连接人员、系统、信息和设备的软件;它构建在 XML Web 服务的基础之上,可用于将新建应用程序以及现有应用程序与跨越平台、应用程序和编程语言的软件和服务连接起来。InfoPath 内置对 Web 服务的支持。允许您设计和编辑用 Web 服务检索和提交的 XML 数据表单。简而言之,InfoPath 提供了 Web 服务 XML 数据的丰富客户端体验。

问:InfoPath 支持哪些服务器和数据库?
答:

InfoPath 可与任何通过 Web 服务向外界暴露数据的服务器进行互操作。InfoPath 内置对使用 ADO 的 Access 数据库和 SQL Server 数据库的支持,还支持通过 http 提交 XML 数据。除了内置功能外,您还可以编写自定义代码以检索和提交 XML 数据。另外,还可以将 InfoPath 与 Microsoft Windows® SharePoint®Services 联合使用以提高工作组的协作能力,或仅将 InfoPath XML 文件保存到本地 PC 上。

问: 为了填写使用 InfoPath 创建的表单,员工必须在其 PC 上安装 InfoPath 吗?查看或阅读 InfoPath 表单时,必须使用 InfoPath 吗?
答:

若要在 InfoPath 表单中输入信息,并利用 InfoPath 丰富的客户端 (结构编辑、业务逻辑验证、富文本格式设置、自动更正和拼写检查),信息工作者必须在其 PC 上安装 InfoPath 2003。也就是说,您可以在浏览器中读取保存为 .MHT 文件的 InfoPath 表单,也可以将 InfoPath 表单作为您邮件消息的正文,在支持 HTML 的电子邮件客户端中阅读。因为 InfoPath 可生成符合任何自定义架构的 XML,因此,其他软件也可以重复使用和显示该 XML 文档。

问:如果用户没有安装 InfoPath,应如何填写 InfoPath 表单?
答:

要填写 InfoPath 创建的表单,同时利用 InfoPath 丰富的客户端功能、数据验证和离线功能,用户需要在其工作站上安装一份 InfoPath 拷贝。

构建基于 InfoPath 表单的浏览器解决方案是可行的。例如,您可以在 InfoPath 中构建一个用于收集防火墙内信息的解决方案 (构建架构和 Web 服务),然后,使用同一架构和 Web 服务构建一个收集防火墙外信息的 ASP.NET 解决方案。对于需要通过浏览器获得的商业解决方案,仍可使用 InfoPath 来处理企业内的流程部分 (在企业内部可以轻松地部署 InfoPath),这包括两个选项:

在解决方案的流程前端使用 ASP.NET 表单。在基于浏览器的表单中收集数据,然后在可用时将数据移至 InfoPath 表单中。这合并了初始数据收集的丰富经验和通过 InfoPath 与此信息互动的丰富经验。客户可以对 InfoPath 和 ASP.NET 解决方案使用同一个架构和 Web 服务。

从众多使用 InfoPath 开发解决方案 (包括源代码、模板、Ultimus 和 Cardiff) 的合作伙伴中挑选一个进行合作。

问:是否需要在每个桌面上部署 InfoPath?可以在浏览器中提供 InfoPath 表单吗?
答:

若要填写或设计 InfoPath 表单,需要将 InfoPath 安装到桌面上。但是,部署 InfoPath 完成后,便可以轻松地制作出大量表单模板,以供需要使用 InfoPath 的用户使用。InfoPath 通过一种与 Web 类似的模型提供透明的部署和维护解决方案,如果需要用户可以下载这些解决方案。当用户单击 InfoPath 表单链接或单击 InfoPath 附件时,InfoPath 表单模板就会悄然地下载到客户端。

问:如何将现有格式 (如书面格式、PDF、Word 和 Excel) 转换为 InfoPath 表单?
答:

InfoPath 具有迁移助手,提供了从书面格式、PDF、Word 和 Excel 向 InfoPath 转换的工具。这些助手工具可以在 http://directory.partners.extranet.microsoft.com/advsearchresults.aspx?listid=23 上的 Microsoft Office System Solutions Directory 中找到。

问:什么是 Office 2003 XML 的免版税许可证,其中包括 InfoPath 吗?
答:

2003 年 11 月 17 日,Microsoft 宣布外界可以使用其 Microsoft® Office 2003 XML Reference Schemas 免税许可程序及其随附文档。Office 2003 XML Reference Schemas 使企业可以在管理分散表单、文字处理和表单文档时使用行业标准的可扩展标记语言 (XML)。Microsoft 新 Office 2003 版本的 Word、Excel 和 InfoPath 利用架构这个概念描述在以 XML 格式保存文档时信息的存储方式。通过免收架构的版税,Microsoft 做出了持续承诺,保证促进 XML 的开发,将其作为下一代技术用于集成应用程序、服务和数据源。该许可证构建在企业开发和支持历史之上,同时在促进 W3C、ECMA、OASIS 和其他标准化组织的 XML 标准中扮演着关键角色。为了确保其广泛的可用性和可访问性,Microsoft 使用 W3C 开发的跨行业标准“XML 架构定义”(XSD) 提供免版税许可证。该许可证为方便用户使用而设计,为相关方提供了访问架构和完整文档的权限。Microsoft Office 2003 XML Reference Schemas(XML参考架构) 包括 WordprocessingML (Microsoft Office Word 2003)、SpreadsheetML (Microsoft Office Excel 2003) 和 FormTemplate XML 架构 (Microsoft Office InfoPath 2003)。

相关方从 2003 年 12 月 5 日开始便可以通过 MSDN 网站 (http://msdn.microsoft.com/office/) 获得 Microsoft Office 2003 XML Reference Schemas 文档和许可。

问: 是不是必须了解 XML 架构或是知道如何编写代码,才可以在 InfoPath 中设计表单?
答:

不必如此,InfoPath 提供了易于使用的“所见即所得”(WYSIWYG) 设计模式,用户不用编写任何代码便可以设计或修改表单模板。InfoPath 提供了一套随时可用的示例模板,这套模板包括了各种典型的用户方案。您可以修改任意示例表单 (如在表单中添加新域),或者根据需要设计自己的表单。要设计新表单,只需向空白表单中插入控件即可。InfoPath 自动在后台创建架构,以后,在必要时,可以使用“数据源”任务窗格修改架构。如果从现有架构中开始设计,还可以在任何打开的节中向该架构添加域。

问:InfoPath 可以使用现有的企业架构吗?
答:

可以。InfoPath 的构建基础源于 XML,它支持基于 W3C XML 架构 (XSD) 标准的自定义架构。使用 InfoPath,可以基于自己定义的架构设计表单。InfoPath 将自动应用基于该架构的数据类型和结构验证。

问:InfoPath 是否包含数据库?
答:

不包含,InfoPath 本身不包含数据库/存储库,但它支持使用 XML Web 服务或 ADO 与数据库进行互操作。

问:可以使用 InfoPath 生成报表吗?
答:

InfoPath 的设计目标是通过丰富的动态表单帮助客户更有效地收集信息,并将这些信息集成到业务流程中。因此客户可以使用 InfoPath 在现有数据基础上生成报表视图,不过,这并不是该产品的设计目的。InfoPath 的优化设计适用于特定场合:需要收集或修改数据,或者需要前后关联更紧密的数据时。由于 InfoPath 收集的数据可集成到任何支持 XML 的数据库或服务器中,因此,客户可以将 Microsoft 或第三方报告应用程序与 InfoPath 联合起来使用,以生成报表。

问:InfoPath 提供内置工作流功能吗?如何将 InfoPath 合并到当前工作流进程中?
答:

对于那些想为用户提供丰富的表单交互接口,并将此作为其工作流进程一部分的客户来说,InfoPath 是理想的应用程序。InfoPath 对一般 XML 文档的内在支持使公司可以容易地将 InfoPath 表单集成到这些进程中。您可以根据 XML 文档中编辑的数据来确定工作流,还可以使用 InfoPath 内置的提交功能自定义发送文档。此外,用户还可将这些结构化文档从业务流程中分离出来,以进行异常情况处理,通过电子邮件与同事合作解决这些异常情况,然后将文档重新插入到业务流程中。

请注意,InfoPath 2003 不包括工作流引擎。对于 Microsoft BizTalk® Server 而言,InfoPath 是很自然的客户端选择,因为两者都在 XML 有效负载上运行。您可以利用 InfoPath 对 http、XML Web 服务和电子邮件的内置支持,使用 InfoPath 可以轻松地向 BizTalk 发布数据,而不用编写代码。此外,通过允许用户签入和签出 InfoPath 表单,InfoPath 与 SharePoint Portal Server (通过 Windows SharePoint Services) 的集成还支持简单的工作流过程。

问: InfoPath 中的“示例表单”是什么?
答:

InfoPath 提供了一套随时可用的示例表单,其目的是帮助最终用户更快制作表单,并为一些有能力的用户提供一个基本模板,使其可进行进一步修改。开发人员可以自定义示例表单,以供最终用户填写,或将示例表单作为开发示例。InfoPath 示例表单包括开支报表、采购订单、销售报表和服务申请。

问:SDK 可用于 InfoPath 吗?它包括什么?
答:

可以,InfoPath SDK 将在 Web 上发布,以为解决方案开发人员提供帮助。InfoPath SDK 包括一些使用主平台服务开发 InfoPath 解决方案的示例、端对端示例、开发人员可用的“助手”工具,以及一些与开发有关的帮助和文档。

问:InfoPath 都支持哪些级别的辅助功能?
答:

作为 Office 系统的应用程序,InfoPath 在设计中认真考虑了用户对辅助功能的需求。InfoPath 为产品兼容辅助功能提供了底层支持,此外,用户还可以使用键盘简捷、快速地在菜单、工具栏和 InfoPath 表单之间移动切换。您还可以通过改变大小、重新安排工具栏和菜单,选择颜色、大小、声音及格式选项来自定义自己的工作区。

问:InfoPath 编辑功能是否可用作独立组件或运行时?
答:

在1.0版本中,我们还没有计划将 InfoPath 的编辑功能作为运行时单独提供给用户。

问:
答:

InfoPath 对其他工具

问:为什么要部署 InfoPath 而不是构建 Web 应用程序 (如以浏览器为目标的应用程序)?
答:

与浏览器不同,InfoPath 是富客户端,它具有富客户端所能提供的所有功能。首先,InfoPath 在表单中加入了用户熟悉的文字处理体验,将格式文本编辑 (其中包括后台拼写检查和自动更正) 带入了完全结构化的表单编辑环境中。其次,InfoPath 提供了一个简单的界面,可用于填写重复出现的数据和可选域。第三,InfoPath 表单比 Web 应用程序更易于构建。第四,InfoPath 提供了类似文档的模型,允许您在与网络完全断开的离线状态下工作。您可以将工作保存到您的计算机中,并在方便时继续工作。最后,InfoPath 提供了对在线和离线两种状态下的客户端业务逻辑验证能力。

问:InfoPath 如何适应和(或)使用其他 Office 产品?
答:

每个 Office 应用程序都针对一组不同的方案目标进行了优化。InfoPath 是一个经过优化的信息收集工具,适合收集信息,尤其是收集那些复杂、完全结构化、包含混合文本数字数据的信息。Word 是一个文档创建和发布工具,当需要从包含大量文本,同时包含相对较简单结构的文档中创建和提取信息时,应当使用此工具。Excel 是一个数据分析和计算工具,适用于计算数值数据、尤其是适合在表格结构中显示的数据。Access 是一个信息报告和存储工具。崭新的 Microsoft® Office System 中的这些应用程序所包括的 XML 技术使用户可以使用自己的架构,用自己的方式描述数据,并基于这些自定义的架构提取和复用信息。

问: 使用 InfoPath 2003 需要在计算机中安装新的 Microsoft Office System 中的其他应用程序吗?
答:

不需要,InfoPath 2003 具有独立应用程序的全部功能,可以与企业内的任何业务流程共同使用,而不需要考虑企业是否安装了 Microsoft Office System 中的其他应用程序。不过,由于 InfoPath 和一些新的 Microsoft Office System 应用程序都使用 XML 技术,因此,将 InfoPath 和其他新 Office 应用程序一起使用可以更好地管理企业间的信息。例如,将 InfoPath 与其他 Office 应用程序集成,便可以实现使用 InfoPath 收集数据、通过 Windows SharePoint Services 共享数据、使用 InfoPath 与 Microsoft Outlook® 2003 消息发送和协作客户端的集成发送文档,将信息导出到 Microsoft Excel 2003 以供进一步分析等等一系列功能,而且我们的业务用户可能会很欣赏这些功能。

问: InfoPath 提供对 UDDI 的内置支持吗?
答:

是的,InfoPath 的设计模式支持通过 SOAP、WSDL 和 Web 服务发现 (UDDI) 来调用 XML Web 服务。XML Web 服务可作为数据源,以供主 InfoPath 表单和(或)InfoPath 表单模板使用的辅助数据使用。

问:InfoPath 如何与 Visual Studio .NET 联合使用?
答:

InfoPath 具有其自己的表单开发设计模式。在设计模式中,开发人员可以将 InfoPath 表单模板保存为单个文件,然后在 Visual Studio® 开发系统中对其进行处理。反过来,开发人员还可以使用 Visual Studio .NET 开发可在 InfoPathe 表单中使用的 XML 架构、脚本代码和 C++ 组件。在开发过程的最后阶段,开发人员可以在 InfoPath 设计模式中加载这些文件,然后发布表单模板。他们还可以在 Visual Studio 中开发 XML Web 服务,InfoPath 可以使用这些服务与服务器交换 XML。

问:InfoPath 都提供哪些级别的 BizTalk 支持?
答:

对于 BizTalk 而言,InfoPath 是很自然的客户端选择,因为两者都在 XML 有效负载上运行。您可以使用 Web 服务、电子邮件附件或作为企业收件箱的 STS 表单库,轻松地从 BizTalk 中检索数据。您还可以使用 InfoPath 提供的内置支持 (可通过 http、XML Web 服务和电子邮件保存 XML 数据) 向 BizTalk 发布数据。InfoPath SDK 中包括一个示例,其中展示了 InfoPath 与 BizTalk Server 集成的最佳实践。

问:InfoPath 都提供哪些级别的 SQL Server 支持?
答:

InfoPath 可与任何支持 XML 的服务器共同使用。您可以在来自 SQL Server 的 XML 数据基础上轻松地创建表单 (通过 SQLXML)。使用 Visual Studio,还可以构建 Web 服务,通过 ADO.NET 连接 SQL,然后向 InfoPath 提供 XML 数据。请注意,InfoPath 会返回修改后的 XML 数据,但不提供关于数据更改的显式信息。您的解决方案需要考虑到在客户端或中间层 Web 服务上跟踪的数据更改。InfoPath 对来自 Access 或 SQL Server 的 ADO 记录集具有内置支持,您还可以利用此内置支持。此外,InfoPath 还具有对 ADO 数据的内置支持,可以跟踪 ADO 数据的数据更改,并将结果提供返回到数据库。请注意,您不可以在 InfoPath 中新建数据库表或其他架构元素。

问:InfoPath 支持在 Tablet PC 上使用手写功能吗?
答:

支持。使用 Tablet PC,如果输入的信息需要转化为文本,您就可以使用键盘或“Tablet 输入面板”(TIP) 填写 InfoPath 表单。将焦点置于可编辑域时,TIP 就会出现。也就是屏幕底部的可视标准手写/键盘面板。在此处敲击键盘进行的输入将转化为文本,以文本形式存储在 XML 数据中。

我们在工具框中添加了一个名为“手写图片”的控件,使用此控件可以在表单中包括签名和绘图。此控件会在表单中添加一个空白区域;当用户在 Tablet PC 上填写表单时,可以在控件中绘制图像。手写数据存储为笔画 (XML 中以 base64 编码的二进制数据),可对其进行保存和编辑。由于“手写图片”是一种图片控件,因此不支持文字识别,但 XML 是有效的 GIF 图像,可以改变数据的用途 (如用于数据库、ASP.NET 页面等),以及在其他流程中查看。此控件没有在 Beta 2 版本中提供,但在以后的 RTM 版本中将提供给用户。

问:InfoPath 2003 会接管 .XML 扩展名的文件吗?InfoPath 必须是默认的 XML 编辑器吗?
答:

不,由于使用 HTML 文件,在 Microsoft® Windows® 操作系统中打开 .XML 文件时,将自动启动创建该文件的应用程序。如果 Windows 没有检测到创建该文件的应用程序,将启动为 XML 文件扩展名注册的默认应用程序。

使用 InfoPath 2003 创建或编辑 XML 文件时,InfoPath 会在 XML 文件的开头创建一个 PI (处理指令),说明该文档应当用 InfoPath 编辑。PI 是 XML 标准的一部分,不会干涉 XML 文件所基于的架构。

问:InfoPath 如何与 Active Directory 联合使用?是否提供了对 Active Directory 的内置支持?
答:

InfoPath 不提供针对 Active Directory 进行验证的任何内置支持。不过,InfoPath SDK 将提供一个示例解决方案,用于展示如何在解决方案中针对 Active Directory 处理多重角色 (ID) 和验证。

问:
答:

InfoPath 和标准

问:InfoPath 是 Microsoft 以专有方式支持开放式标准的一个例子吗?
答:

不,InfoPath 构建在 W3C 标准的基础之上,如 XML 1.0 SE、XML 中的命名空间、DOM 1.0、XML DSIG、XSD 1.0 (XML 架构第一部分:结构)、XSD 1.0 (XML 架构第二部分:数据类型)、XSLT 1.0、HTML 1.0、UDDI 1.0、WSDL 1.1 和 SOAP 1.1。

问:在 InfoPath 中使用架构后,还能否保持架构的完整性?
答:

是的,能保持。InfoPath 的构建基础源于 XML,它支持基于 W3C XML 架构 (XSD) 标准的自定义架构。InfoPath 可以加载任何符合 XSD 标准的 XML 架构。使用 InfoPath,您可以基于自己定义的架构设计表单。InfoPath 将基于您的架构应用数据类型和结构验证。

问:可以加载的架构有什么类型限制吗?
答:

InfoPath 的构建基础源于 XML,它支持基于 W3C XML 架构 (XSD) 标准的客户自定义架构。InfoPath 不提供对 DTD 或 XDR 的支持。

问:InfoPath 支持 HTML 吗?
答:

InfoPath 支持 XHTML 1.0,您的架构中可以包括对它的引用。

问:InfoPath 提供 XML 数字签名或私人签名吗?是否可以使用用户机器上的现有数字证书?
答:

InfoPath 对使用 W3C XML DSIG 标准的 XML 文档提供了数字签名支持。向 InfoPath 表单中添加数字签名时,系统将提示用户选择可用于签名的数字证书。

问:InfoPath 支持 XForms 吗?
答:

InfoPath 侧重于帮助用户在文档范例的基础上轻松地设计和填写丰富的动态表单。为了帮助定义文档范例,InfoPath 使用一种经实践证明,切实可行的方法将 W3C XSLT 1.0 样式表与 XML 文件关联在一起。通过使用 XSLT 标准定义表单布局,InfoPath 可以利用强大的转换标准语言来定义 XML 映射到文档视图的方式,这对于为用户提供最佳的 XML 编辑体验而言非常重要。InfoPath 以此方式支持使用 W3C 的 XSLT 1.0 代替 W3C 的 XForms。

问:
答:

InfoPath 2003 编辑模式

问: InfoPath 表单的文件格式是什么?它支持二进制附件吗?
答:

InfoPath 不生成二进制文件格式。InfoPath 表单自带的格式是包括在任何定制架构中的 .xml,这种格式可以帮助公司轻松地将 InfoPath 表单集成到其现有业务流程中。从某种意义上讲,InfoPath 并没有定义文件格式:文件格式是由客户定义的,InfoPath 将根据格式的 XSD 架构规则来生成文件格式。

问:InfoPath 支持拼写检查、语法检查和自动更正吗?
答:

InfoPath 支持拼写检查和自动更正,使用的词典与其他 Office 应用程序使用的词典相同。它目前还不支持语法检查。

问:InfoPath 支持图像插入吗?
答:

InfoPath 支持通过 Internet 和其他 Office 应用程序两种方式插入图像。如果表单设计中包含格式文本区域,或其架构支持在 XML 中插入图像,则 InfoPath 将允许最终用户插入图像或图像链接。在设计表单时,您还可以在表单模板中包括图像。

问: InfoPath 支持对修改的跟踪 (如跟踪您或他人执行的插入、删除或格式修改) 吗?
答:

目前还没有计划在 InfoPath 中提供内置的修改跟踪支持。

问: InfoPath 支持多语言编辑和验证吗?
答:

跨国公司的表单设计人员可以在每个视图中使用不同的语言创建表单。例如,法国的员工可能会想要法语版的表单,同时其他人可能想要英语版的表单,但设计人员想为这两种表单使用一种通用的架构。为了能以多种语言填写表单,用户必须使用 InfoPath UI 更改表单语言以获得第二种语言的验证工具。

问: InfoPath 都提供哪些级别的打印支持?
答:

InfoPath 提供基本的内置打印支持 (与打印 web 表单类似),并在打印视图中自动隐藏滚动条和下拉箭头。表单设计人员还可以使用自己的布局创建特殊的打印视图,或指定其他视图的打印方式。

问:如何保护 InfoPath 表单 (如不让其他人修改表单)?
答:

您可以控制表单中哪些域为只读域。还可以使用其他任何方法来阻止他人修改表单模板。

问: 可对数据加密吗?InfoPath 提供密码保护功能吗?
答:

InfoPath 不提供表单加密或受密码保护的表单访问。您可以使用操作系统和数据库的权限机制设置对表单和企业数据的访问权限。通过电子邮件方式发送 XML 文档的客户可以使用 SSL 对这些文档加密。InfoPath 还提供了 XML 表单的数字签名支持,该功能可使其他用户确认 XML 表单的创建者并确保表单自创建后未曾修改过。

问: InfoPath 2003 是否提供了基于角色的内置安全性支持?
答:

InfoPath 2003 不提供基于角色的内置安全性支持。不过,InfoPath 附带了“Microsoft 脚本编辑器”。通过使用 JScript 或 VBScript,用户可以编写代码,使之连接到基于角色的现有安全性系统。另外,可以开发多个表单以支持不同的角色,所连接系统可以根据给定的用户权限来确定应启动哪个表单。请注意,如果带有sandbox机制的脚本代码不允许访问定义角色的安全系统,您就需要使用受信任的解决方案。

问:InfoPath 都提供哪些级别的数字签名支持?
答:

InfoPath 使用 W3C XML Signature 标准 (XMLDSIG) 保护用户通过 InfoPath 表单创建的 XML 数据。任何在 InfoPath 表单数字签名之后发生的更改都将使数字签名无效,当 InfoPath 试图加载数据或使用数据时,都会检测到此签名问题。在检验数字签名以确认 InfoPath 表单中的底层 XML 数据是否自签名后未做改动时,最常使用的是 XMLDSIG 数字签名。

在应用程序上附加数字签名的语义说明 (InfoPath 目前还不支持此功能) 涉及到签名语句的制作,经过签署的声明说明了要为用户呈现哪些数据、呈现方式,以及签名中是否存在有关制作签名的用户的任何语义暗示。在这些情况下,表单自身对于签名者的安全性要视签名者为表单提供的数据而定。正如 XMLDSIG 规范的简介中所述的一样:“MLDSIG 是一种在关键码与被引用数据之间建立关联的方法,它并不正式指定…被引用和被签署数据所含的意义。”这种语义可能构建在 XMLDSIG 的顶层,但这需要在核心 XMLDSIG 语法的顶层定义附加的语义元素。InfoPath 将根据客户反馈信息启用此附加数字签名功能,用户有望在 2004 年上半年从网上下载此资源。

问:InfoPath 支持内置搜索功能吗?
答:

InfoPath 在单一 XML 文件中提供基本的查找和替换支持。但是,跨多个 .xml 文件的搜索功能必须由其他工具提供。最终用户可以将 InfoPath 与 Windows SharePoint Services 或 SharePoint Portal Services 联合使用,也可以将 InfoPath 作为由 IT 部门或第三方提供商定制开发的整体集成解决方案的一部分,来获取此功能。

问:InfoPath 支持智能标记吗?
答:

最终用户填写 InfoPath 表单时,会自动生成基于表单架构的 XML 数据 (因此已预先定义了标记),同时根据表单架构添加或删除指定的 XML 数据。通过 InfoPath 的设计模式,您可以将业务逻辑与标记建立关联。同时,由于 InfoPath 提供了环境敏感特性,因此,根据填写表单时创建的架构基础规则,最终用户会看到必需信息和可选信息。目前还没有计划在第一版中为自动识别表单域中的输入信息以便自动嵌入标记及其相关动作提供支持。另外,第一版中也不计划支持“粘贴选项”、“自动更正选项”或“环境敏感智能标记”。

问:InfoPath 如何在离线状态下工作?
答:

与其他任何 Office 文件一样,您只需将正在填写或设计的表单保存在硬盘上,便可在以后继续使用。如果您处理的表单所基于的模板是部署在 Web 服务器上的模板,则第一次打开新版本的表单时,Web 服务器上与之相关的模板会悄然下载到本地,并存储在计算机的高速缓存中。然后,不管在线或离线,您都可以对该表单进行处理。此过程与高速存取网页,然后在离线状态下使用相似。如果表单使用来自在线数据源的辅助数据 (如查询表,目录等等),则可以在 XML 中获得这些信息的快照,并在设计时将其包括到表单模板中,以使您的解决方案在离线状态下也可工作。

问: 如果解决方案连接到数据库,则离线时会出现什么情况?数据库连接失败时是否会收到错误消息,而且不能够进行进一步操作?
答:

如果主数据源来自数据库或 XML Web 服务,则离线时将不能打开表单或将数据提交至此数据源。但是,如果在线时您执行了查询操作,将可以继续使用已保存的文档。然后,当您重新上线时,就可以提交这些数据。

请注意,任何离线状态下使用的表单都应当包含一个囊括全部所需帮助数据的快照,而不再依赖于从网络中动态获取数据。在设计时,您可以在表单模板中加入辅助数据快照。另外,您还可以编写脚本以在用户打开离线文档时收到错误消息。

问: 双击附带在电子邮件信息中的 InfoPath 2003 表单时,会出现什么情况?与离线时有什么不同吗?
答:

双击附带在电子邮件信息中的 InfoPath 表单时,如果已经安装了 InfoPath 2003,表单将自动在 InfoPath 中打开。如果没有安装 InfoPath,将打开为 .xml 文件注册的默认应用程序中,您可在其中查看 XML 数据。

请注意,如果您的表单所基于的模板是部署在 Web 服务器上的模板 (相对于与本地安装的模板),则只要模板已经存储在计算机高速缓存中 (第一次在线打开表单时自动发生此操作),就可以在 InfoPath 中自动打开表单。还要注意,任何离线状态下使用的表单都应当包含一个囊括全部所需帮助数据的快照,而不再依赖于从网络中动态获取数据。

问: 在 InfoPath 中,“保存”和“提交”之间有什么区别?
答:

InfoPath 基于文档模式,因此最终用户可以将其工作保存到计算机中,并在方便时继续工作,即便在离线状态下也可如此。无论在线或离线,保存操作都尝试将文件自动保存到其源位置。由于最终用户可以保存处理中的表单,InfoPath 还将向用户提出有关验证错误的警告,但仍允许保存表单。

相比较而言,提交是 InfoPath 认可的特殊功能。设计表单时,必须要指定提交目标。另外,最终用户尝试提交表单时,InfoPath 会在实际提交前,根据表单架构和自定义业务逻辑对表单中的信息执行强制验证。

问:在 InfoPath 中如何处理元数据?
答:

InfoPath 可以处理包括在任何自定义架构中的 XML 信息,因此它不提供对预定义元数据的内置支持。如果您能够控制架构,则可以选择在表单中添加自己定义的元数据,并添加自定义布局和代码对元数据进行处理。

问:
答:

InfoPath 设计模式

问:什么是 InfoPath 表单模板?表单以什么格式定义?
答:

InfoPath 表单模板是一个文件集合,用于定义 InfoPath 表单的布局和功能。表单模板既可以存储为单个压缩 CAB 文件 (扩展名为 .xsn),也可以存储为包含文件的文件夹。在 InfoPath 中,任何 XML 文档都必须具有此文件集合才能打开和填写数据。在特定情况下,文件集合中可能包含一个定义 XML 结构的 XML 架构文件 (在填写表单创建)、一个或多个定义不同视图的 XSLT 文件、一个用于确定表单模板所创建空白表单的结构和内容的 XML 文件、一个定义表单模板绝大部分后台功能的 XML 文件 (扩展名为 xsf),以及一些可选的辅助文件 (如用于定义合并功能的 Jscript 或 VBscript、图形和 XSLT,以及表单模板所需的一些其他资源。)。

问: InfoPath 表单模板捆绑在架构中还是文档中?
答:

InfoPath 表单模板捆绑在 XML 架构中。对于符合同一个模板架构的所有文档,都可以使用此模板对其进行编辑。因此,文档捆绑于 InfoPath 表单模板中。文档包含一个对相应模板的引用,因此,无论文档移至何处,都可以使用同一模板将其打开。

问:在 InfoPath 2003 中是表单设计驱动架构,还是架构驱动表单设计?
答:

如果您从空白表单开始创建表单模板,则您在表单中插入的控件将在后台生成一个架构。然后您便可以进一步自定义该架构。如果您是从 XML 架构或 XML 文档开始创建表单模板,InfoPath 将使用架构来驱动表单设计。在这种情况下,架构主要以两种方式“驱动”表单设计。第一种方法,如果您从“数据源面板”向表单中插入域或组,InfoPath 将使用架构来确定域或组在表单中的最佳摆放位置。第二种方法, InfoPath 提供的核心校验功能由架构属性来确定。

问: InfoPath 支持在一个表单模板中使用多个架构吗?
答:

不支持,每个 XML 架构都需要有自己的表单模板。不过,架构可以根据 XSD 标准,包含或导入其他 XML 架构。辅助架构可以用于填充列表框或下拉列表控件。请注意,用于创建表单模板的架构可通过以下方式获得:从 .xsd 文件加载、由 XML Web 服务提供,或从针对 ADO 数据源的查询结果推导得出。另外,它还可从 XML 文档推导得出,或在设计表单时自动生成。

问:我可以制作像素完美(pixel perfect)表单以与我的书面表单相匹配吗?
答:

电子表单提供了书面表单所不具备的内在优势,它更易于用户填写。InfoPath 的设计目标就是在确保所捕获信息正确的前提下帮助用户更轻松地收集和提供信息。InfoPath 按照此目的进行了优化,在表单世界中加入了用户熟悉的文档编辑体验。因而,提供可与书面表单相媲美的像素完美表单不是 InfoPath 的最终目标。与大多数表单创建程序不同,InfoPath 采用了表格隐喻方式以便于根据计算机屏幕布置和优化表单。也就是说,如果设计方案要求类似书面表单的电子表单,则 InfoPath 所支持的表格模式可帮助您生成十分近似的匹配表单。

问:如何保护表单模板不被修改?InfoPath 提供了哪些级别的权限/安全性?
答:

InfoPath 提供两个保护级别,可保护 InfoPath 表单模板不被修改。如果您能够控制 InfoPath 的安装,则可以选择禁用 InfoPath 设计模式。如果不能访问设计模式,也就没有人能够修改您的表单模板了。不过,如果您不能控制 InfoPath 的功能安装,则可以通过对表单用户隐藏设计模式入口点的方式来保护模板。不过,请注意,任何可以访问您表单模板和 InfoPath 设计模式的用户都可以通过 InfoPath 直接打开您的模板。打开表单模板时,InfoPath 会显示警告信息,警告用户不要对表单进行修改。

问:InfoPath 支持 Web 或 COM 控件吗?
答:

不,InfoPath 设计模式不支持 Web 或 COM 控件。

问:可以在表格中放置编辑控件吗?
答:

InfoPath 没有在第一版的设计模式中提供扩展内置控件组的机制。但是,用户可以定义由基本控件组合而成的自定义控件。然后,便可以将架构中的节与该控件组相关联,这样,在视图中插入域或组时,InfoPath 就会建议插入此新控件。

问:能否针对数据库将数据绑定至控件,例如列表框?
答:

可以,InfoPath 2003 提供了一组数据库对话框,用于支持辅助数据源以生成默认视图,以及将控件 (如列表框) 绑定至辅助数据源。

问:InfoPath 具有向数据库提交表单的内置支持吗?
答:

InfoPath 通过其内置的 ADO 支持与 Access 和 SQL Server 数据库共同合作。您可以在三层体系结构中使用 Web 服务连接数据库。另外,您还可以联合使用 InfoPath 与 Windows SharePoint Services,以提高工作组的协作,或仅将 InfoPath 文件保存到文件系统中。

InfoPath 提供了 Submit 命令及其相关 onSubmit 事件。要提交的 XML 文档必须是有效文档。最终用户尝试提交表单时,InfoPath 会在实际提交前,根据表单架构和自定义业务逻辑对表单中的信息执行强制验证。

问:InfoPath 都支持哪些脚本语言?编写脚本的开发环境是什么?
答:

InfoPath 提供了内置的脚本开发环境 (Microsoft 脚本编辑器),您可在此环境内为自定义业务逻辑编写 JScript 或 VBScript 代码。如果您处理的是从表单模板中提取出的文件,则可以使用自己的脚本开发环境 (如 Visual Studio)。InfoPath 还将为用户在 Visual Studio .NET 开发平台上使用以受控代码形式编写的业务逻辑开发解决方案提供支持。此功能在 2004 年上半年有望能够通过网络免费下载,并在 Office 开发人员的 MSDN 上发布。

问: InfoPath 如何支持针对外部数据源的数据校验?
答:

InfoPath 提供了一个 onValidate 事件,可对此事件编写脚本,实现自定义的数据校验。您可以从脚本中调用 XML Web 服务、针对数据库中的查询表进行检查,或运行任何其他自定义脚本以实施针对外部数据的校验。例如,您可以使用上述任一方法在服务器上检查采购订单的最大购买量限制或检查保险报价。

问: InfoPath 如何在设计模式下公开 XML Web 服务?
答:

InfoPath 支持直接调用 XML Web 服务,具体方法是通过 WSDL 文件或使用 Web 服务发现 (UDDI) 来实现调用。XML Web 服务可作为数据源,以供主 InfoPath 表单和(或)InfoPath 表单模板使用的辅助数据使用。请注意,InfoPath 的内置支持仅对使用文档(文字)样式的 Web 服务有效。第一版的 InfoPath 还提供了一个客户端类,帮助用户编写 XML Web 服务脚本。

问: 如何将表单本地化为多种语言 (例如,可以将一种语言的现有模板轻松地重新用于另一种语言吗)?
答:

要创建多种语言的表单,有两个选择。第一种方法,也是最好的方法,就是在一个表单模板中为每种语言创建一种视图。在这种情况下,您可以将一个视图中的内容复制到另一个视图中,然后使用 InfoPath OM (语言设置应用程序) 检测用户机器上的默认语言,并切换到该语言的适当视图中。另一种方法是为每种语言创建一个表单模板。在这种情况下,您可以修改现有表单模板,然后再将其保存回文件系统或 Web 服务器 (包括 Windows SharePoint Services)。您还可以修改现有表单模板,并以不同的名称或在不同的位置对其进行保存。

问:InfoPath 对多语言用户界面 (MUI) 提供了怎样的支持?
答:

InfoPath 与其他 Microsoft Office System 应用程序一样,都为 MUI 提供了完全支持。使用 MUI 包,企业可以部署单一版本的 InfoPath,同时还能满足用其他语言工作用户的需要。IT 管理员只需根据用户的个人需要将用户界面 (UI) 和帮助文件切换为不同语言即可。使用 MUI,部署 InfoPath 的企业还可获得 InfoPath 的本地化版本中随时可用的多语言示例表单和校验工具。

问:何时可以校验数据?
答:

校验可以在两个时间点发生,而且可在表单设计期间指定;两个时间点一个是在用户焦点离开控件时,另一个是在用户提交表单时。

问:能否在保存时进行校验?
答:

不可以,InfoPath 基于文档模式,最终用户可以将其工作保存到计算机中,并在方便时再继续工作,即便在离线状态下也可如此。由于最终用户可以保存处理中的表单,因此,InfoPath 会警告用户存在错误,但仍允许其保存带有错误的表单。不过,InfoPath 表单的结构始终是有效的;可能出现的错误一般都与域的数据类型有关。

问: 校验中可以使用公式吗?
答:

InfoPath 的设计模式提供了条件构造器,可以在任何控件中创建校验的限制条件。InfoPath 提供一些校验公式,通过将当前域与任何其他域或常数进行比较而得出结果。在此构造器中,有经验的 XML 用户还可以自己编写 XPath 校验表达式。与此类似,设计模式还提供了一个只读域,用户可以在此只读域中编写 XPath 表达式,使用 XPath 的内置函数执行简单计算。为了满足用户编写更复杂函数和校验规则的要求,InfoPath 提供了脚本环境 (Microsoft 脚本编辑器),用户可在其中编写 JScript 或 VBScript 代码。

问:有哪些参数可用于校验?
答:

校验期间,表单的最终用户环境可用于对象模型。XML 文档中的任何域都可参与校验。另外,事件对象还可包含用于校验的表达式、被更改的 XML 域的父域、更改是否可撤消、导致更改发生的操作类型,以及和更改前后的域值。最后,开发人员还可以指定一短一长两个错误消息,通过对话框或通过无模式警告显示给用户。

问:可以使用 InfoPath 创建通用的 XSLT 吗?
答:

InfoPath 的设计模式使用简单的拖放式操作,便可生成完全兼容的 XSLT 1.0 。但是,由于 InfoPath 的设计目标是为动态表单组生成布局和功能。InfoPath 生成的 XSLT 是一些只有在这些应用情境中才能发挥作用的结构集合。

您可以手动编辑 InfoPath 生成的 XSLT,以设计包含其他 XSLT 结构的表单。如果您在任何应用模板中将模式指定为 "xd:verbatim",InfoPath 将“遍历”这些附加项。

问: InfoPath 支持个人数字助理 (PDA) 吗?
答:

目前还没有计划在 InfoPath 中为将表单提交到 PDA 提供任何内置支持。不过,可以从 InfoPath 中导出表单的 XSLT,并将其作为向 PDA 提交表单以供访问的出发点。

问:InfoPath 支持 COM 吗?
答:

在 InfoPath 中,可以通过脚本调用 COM 组件。可以从受信任的解决方案中调用任何 COM 组件。如果您创建了带有sandbox机制的解决方案,需要将组件标记为安全脚本。

问:是否可以根据在 Word 或 Excel 中创建的现有表单设计新的 InfoPath 表单?如何将带有表单域的 Word 文档转换为 InfoPath 文档?
答:

您可以从 Word 或 Excel 中复制表单并粘贴到 InfoPath 2003 中。格式设置和布局可能会有些不同,因此,需要进行修改。另外,请注意,Word 控件不能用于 InfoPath,因此在粘贴到 InfoPath 时会被自动删除;InfoPath 控件需要插入到适当的位置。还要注意 Excel 公式也不可用于 InfoPath。

问:可以根据现有的 InfoPath 表单设计 InfoPath 表单吗?
答:

可以,可以修改现有表单模板,然后再将其保存回文件系统或 Web 服务器 (包括 Windows SharePoint Services)。您还可以修改现有表单模板,并以不同的名称或在不同的位置对其进行保存。如果修改现有表单模板,InfoPath 将自动更改该表单模板的版本。如果对表单模板执行了可使基于此模板的表单无效的更改,则在保存表单模板时,InfoPath 会警告用户此更改造成的影响。

问:
答:

InfoPath 部署

问: InfoPath 表单模板有多大?InfoPath 表单有多大?
答:

InfoPath 表单模板和表单大小因具体情况而异。一般来说,InfoPath 表单模板的文件可能在 20k 到 50k 之间。一般的表单 (XML 文档自身) 可能在 5k 到 10k 之间。

问:InfoPath 如何确定表单模板的确切位置?
答:

InfoPath 生成的 XML 文件包括一个 PI (XML 处理指令),它可以使用 URL (对于沙盒保护解决方案) 或 URN (对于受信任的解决方案) 识别相应的模板。URN 也可用于示例表单。

问:指向 InfoPath 的网页链接能安装相关的表单模板并调用它吗?
答:

可以,用户单击到 InfoPath 表单的超链接时,就会自动启动 InfoPath 并打开表单。如果没有安装本表单所需的 sandbox 解决方案,系统会在后台悄悄下载所需的 sandbox 解决方案。

问: sandbox 解决方案与受信任的解决方案之间有何不同?什么时候使用前者,什么时候使用后者?
答:

带有 sandbox 机制的 InfoPath 解决方案不在本地注册,它们通过 URL 识别,并保存在本地 InfoPath 高速缓存中。如果删除高速缓存,则下次打开使用此解决方案的表单时,将以安静方式自动下载该解决方案 (与 Internet Explorer 中的网页高速缓存类似)。受信任的解决方案通过 URN 识别,并注册到本地。

sandbox 解决方案可以访问当前表单,但不能访问本地计算机上的任何其他资源。sandbox 解决方案运行时的安全模式与 Internet Explorer 中运行网页的安全模式相同。其优点就是安静下载和自动更新。当您的方案可以在 sandbox 安全模式下完成时,应当使用sandbox 解决方案作为默认选择。如果您需要访问本地资源 (如写入本地文件) 或如果需要运行可靠代码 (如 C++ 组件),则需要使用受信任的解决方案。受信任的解决方案需要在客户端安装 (使用 MSI 或一些其他安装技术) 和显式升级。

问:sandbox 解决方案也包括自动更新吗?
答:

包括。每次调用 sandbox 解决方案,InfoPath 2003 都会检查是否存在新版本可用,如果存在,InfoPath 会在后台悄然更新此解决方案。

问:表单模板如何进行版本控制?
答:

InfoPath 在保存表单模板时,自动给表单模板打上日期、时间和版本号戳记。对于 sandbox 解决方案,InfoPath 会使用此戳记确保用户使用最新的模板填写表单。每次用户打开带有 sandbox 机制的解决方案的 InfoPath 表单时,InfoPath 都会检查是否存在更新版本的表单模板可用。如果有新版本可用,InfoPath 将在后台悄然更新模板。如果新模板具有要在设计模式中添加的域或组,则在默认情况下,用新表单模板打开旧表单时,InfoPath 会自动将域或组添加到旧表单中。但是,如果您做了其他结构上的更改 (例如,移除或重命名域或组),则在设计模式下保存时会收到警告,提醒您现有表单中受影响的域或组中的数据可能丢失。此时,您可以在新位置选择发布更新的模板 (以确保现有表单能够使用原始模板) 或在现有位置以覆盖方式保存。如果您对模板所做的更改将导致现有表单中的数据丢失,但又需要覆盖现有模板,则应当使用 OnVersionUpgrade 事件,当用户打开一个现有表单,且与该表单相关联的模板有更新的版本时,将触发此事件。您可以使用此事件编写脚本,运行一个过程以修改现有表单结构,使其与新模板兼容。请注意,如果使用脚本选项的话,InfoPath 将不能自动处理附加更改,因此,您的脚本就需要处理这些附加更改。如果您只做了非结构更改 (如格式设置或布局更改) 或附加更改,新表单和现有表单将自动使用更新后模板,且不会丢失任何数据。

问:如果最终用户在表单模板已被修改后打开已保存的 XML 文档,会出现什么情况?用户还能以其原始状态查看表单吗?
答:

InfoPath 自动在后台悄悄更新带有 sandbox 机制的解决方案,最终用户不能越过此功能。如果您想赋予最终用户以原始解决方案查看表单的能力,必须将修改后的解决方案保存到新位置或使用一个新的 URN,以便解决方案可以获得一个新的 ID。在这种情况下,它不会覆盖原始解决方案,而只是变成了另一个备用选项。

问: InfoPath 版本架构如何修改?
答:

修改架构时,InfoPath 不会自动转换以前的表单。为了避免影响现有表单,在修改架构时您必须修改解决方案的 ID。同一解决方案的新版本应当向后兼容旧版本。在保存解决方案 ID 时如果需要修改架构,则需要添加自定义代码并加载这些代码,以处理与现有 XML 文档的向后兼容问题。

问:将 InfoPath 表单模板部署完毕后,再移动模板会有什么问题吗?
答:

InfoPath 通过 URL 识别带有 sandbox 机制的解决方案,因此在部署完成后,模板应保留在其部署位置以保持其可用性。如果解决方案被移动,则只要客户端本地高速缓存中的解决方案尚未删除,仍然可以继续工作。没有解决方案的计算机将不能够打开在 PI 中包含了解决方案 URL 的表单。

本文档于产品最终发布和投入生产之前编写,因此我们不能保证此处的所有详细信息与发售产品中的信息完全一致。本文所包含的信息代表 Microsoft Corporation 在文章发布时对所讨论问题的看法。由于 Micrsoft 必须适应瞬息万变的市场情況,因此,本文不应理解为 Microsoftt 一方的承诺,同时 Microsoft 无法保证任何信息在其发布日期之后的正确性。此信息仅代表本文档打印时的产品信息,仅供参考。本文信息可能随时更改,恕不另行通知。

本文仅供参考。Microsoft 公司不对此文件中的任何信息做任何明示或暗示的担保。

(C) 2003 Microsoft Corporation。保留所有权利。Microsoft、BizTalk、InfoPath、Outlook、SharePoint、Visual Studio 和 Windows 均为 Microsoft Corporation 在美国和(或)其他国家(地区)的注册商标或商标。此处提到的实际公司名称和产品名称可能是其各自所有者的商标。

问:
答:
返回页首返回页首