关于 SharePoint Server 2010 中的表单

 

适用于: SharePoint Server 2010

上一次修改主题: 2016-11-30

在本文中,您将了解使用 InfoPath 表单在 Microsoft SharePoint Server 2010 解决方案中收集数据的好处。本文介绍了表单在各种业务解决方案中的作用,以及可使用 Microsoft InfoPath 2010 创建的表单类型。

本文内容:

  • InfoPath 表单概述

  • 表单在 SharePoint 解决方案中的作用

  • InfoPath 表单的类型

  • 部署表单

  • 填写表单

InfoPath 表单概述

所有业务流程均涉及到收集某种数据,任何业务流程的成功均依赖于该数据的质量和完整性。通过在 SharePoint 解决方案中使用 InfoPath 表单,您可以确保只收集有效、高质量的数据。通过允许对数据收集过程标准化、自定义和优化而不必编写任何代码,InfoPath 2010 可实现这一目标。

以下是 InfoPath 提供的可确保数据完整性的一些关键功能:

  • 自定义数据有效性可确保用户不会提交包含无效数据的表单。

  • 自定义布局。您可以使用多个视图,将表单拆分为多页或创建针对特定用户或任务优化的单独视图,从而简化表单填写体验。您可以利用条件格式来优化表单填写体验。例如,您可以基于用户输入的值,显示或隐藏表单中的字段。

  • 数据连接,通过连接到其他源(如 SharePoint 列表或 Web 服务),您可以将提供支持的上下文数据提取到表单中。

无需代码即可实现上述功能。但是,您可以使用 Visual Studio Tools for Applications (VSTA) 编写托管代码,以便将更多高级功能添加到表单中。

表单在 SharePoint 解决方案中的作用

表单在所有业务流程管理解决方案中均具有一定作用。下面是使用 InfoPath 表单的业务解决方案和应用程序类型的几个示例:

  • 表单驱动的应用程序起始于用来收集数据并添加其他 SharePoint 功能以处理和报告数据(包括工作流、报告、自定义网页和外部列表)的表单。示例包括技术支持网站、采购中心或人力资源部门的员工招聘中心。

  • 文档工作流应用程序会自动完成基于文档的业务流程。通过将 InfoPath 表单添加到工作流中,您可以在工作流生命周期内预定义的时间从用户那里收集信息,并允许用户与该工作流的任务进行交互。示例包括合同审批、技术规范审阅或法律文件的处理。

  • 业务数据应用程序起始于通过 Business Connectivity Services 可在 SharePoint Server 中使用的外部系统中的数据。可通过外部列表在 SharePoint Server 中访问外部系统中的数据,并且可使用 InfoPath 表单来添加、查看、更新和删除这些数据。示例包括客户关系管理和企业资源规划。

  • 临时业务流程可使用 SharePoint 列表进行管理。可使用 InfoPath 2010 对用于在这些列表中创建、读取和更新项目的表单进行自定义。示例包括简单问题跟踪或任务列表。

  • 文档信息面板使用 InfoPath 表单显示 Microsoft Office system 客户端应用程序内的文档元数据。

InfoPath 表单的类型

根据组织及其业务资源和需求的不同,表单设计者可以是专门从事基于表单的设计和开发工作的专业人员,也可以是其他用户,如信息工作者、总体解决方案设计者、网站设计者、网站集管理员、Web 开发人员或拥有其他主要职责的服务器场管理员。

他们设计的表单类型将取决于业务解决方案的要求。

InfoPath 组件

InfoPath 包含以下两个主要组件:

  • InfoPath 2010 是拥有以下两种模式的 Office system 客户端应用程序:

    • Microsoft InfoPath Designer 2010 用于创建表单模板。表单模板可定义表单的数据结构、外观和行为。完成设计过程之后,表单设计者会将表单模板发布到 SharePoint Server,这样用户就可以开始基于该模板填写表单。

    • Microsoft InfoPath Filler 2010 用于填写基于在 SharePoint Designer 中创建的表单模板的表单。

  • 利用 Microsoft SharePoint Server 2010 中的 InfoPath Forms Services,可在 Web 浏览器中呈现表单。它可用作 SharePoint Server 2010 的一项企业功能。服务器场管理员可以在 SharePoint 管理中心网站上为 InfoPath Forms Services 配置相关设置。

Web 浏览器与仅适于 Filler 的表单

表单设计者要做的第一项设计决定就是要创建 Web 浏览器表单还是仅适于 Filler 的表单。可在 Web 浏览器中填写浏览器表单,而只能在 InfoPath Filler 2010 中填写仅适于 Filler 的表单。

创建浏览器表单的主要好处在于填写表单的用户不必在计算机上安装 InfoPath 2010。可在浏览器中填写这些表单。若要将浏览器表单发布到 SharePoint Server 并在浏览器中呈现它们,则需要 InfoPath Forms Services。但请注意,Web 浏览器表单不支持特定的功能和控件。这是创建仅适于 Filler 表单的最常见原因。

Web 浏览器表单

浏览器表单包括以下类型:

  • 列表表单

  • 外部列表表单

  • 表单库表单

  • 工作流表单

SharePoint 列表表单

作为 SharePoint Server 2010 中的新增功能,您现在可以通过使用 InfoPath 2010 来扩展和增强表单功能,以便创建、编辑和查看 SharePoint 列表中的项目。发布到 SharePoint 列表中的 InfoPath 表单模板将替代默认的 SharePoint 列表表单。

列表的每种内容类型均有其自己的 SharePoint 列表表单,可在 InfoPath Designer 中自定义该列表表单。

通过在 InfoPath Designer 中自定义列表表单,您可以通过添加默认 SharePoint 列表表单不支持的以下功能来增强 SharePoint 列表功能:

  • 添加规则以验证用户添加到表单中的数据。例如,如果使用表单跟踪组织的订单,则可以为各个订单强制设置支出限度。

  • 添加规则以依据特定条件设置数据格式。表单设计者可以显示或隐藏字段、启用或禁用控件、切换视图或在字段中设置某个数据的值。例如,在库存跟踪表单模板中,您可以向请求新库存的用户而不是采购新库存的组织管理员显示其他信息。

  • 查询来自其他源的数据。例如,您可以检查外部系统中库存的可用性,并让用户即时知道是否无法使用某一种特定项。

  • 更改表单的布局和外观。例如,您可以将所需字段移到表单中的某个突出位置,以便用户能够更轻松地查找和填写,也可以添加针对不同任务或用户权限而优化的视图。

这些可用于 SharePoint 列表的自定义选项、内置视图和筛选选项使列表表单能够用于多种业务解决方案,包括临时流程和更加复杂的结构化业务流程。

SharePoint 列表表单模板无法包含托管代码、重复数据或嵌套数据。如果整体解决方案需要在表单中包含托管代码或复杂的数据结构,则必须使用表单库。

外部列表表单

利用 Business Connectivity Services,您可以借助使用 SharePoint 外部列表来使用外部系统(如数据库或 Web 服务)中的数据。外部列表是通过外部内容类型创建的。对于常规 SharePoint 列表,可使用 InfoPath 2010 来自定义用于创建、读取、更新和删除外部列表项的表单。

表单库表单

表单库是一个 SharePoint 文档库,该文档库将 InfoPath 表单用作其默认内容类型。单击表单库中的“新建”按钮可创建新表单,由用户填写的各个表单在表单库中存储为 XML 文件。

如果您的解决方案需要以下任一功能,则应使用表单库中的表单:

  • 重复数据或嵌套数据

  • 数字签名

  • 托管代码

  • 存储为 XML 的表单数据

工作流表单

表单设计者可使用 InfoPath Designer 自定义用户填写的表单,以与 SharePoint 工作流中的任务进行交互。

有关如何设计表单模板的详细信息,请参阅 InfoPath 帮助和操作方法 (https://go.microsoft.com/fwlink/?linkid=185225&clcid=0x804)。

有关如何设计包含自定义代码的表单模板的详细信息,请参阅 SharePoint 开发人员中心中的 InfoPath Forms Services(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=185226&clcid=0x804)(该链接可能指向英文页面)。

部署表单

表单库中表单的发布选项取决于表单模板是否包含托管代码、表单设计者的权限以及 InfoPath Forms Services 设置。

发布不包含代码的浏览器表单

具有“设计”权限级别的任何表单设计者均可将不包含托管代码的 Web 浏览器表单直接发布到 SharePoint Server。表单设计者可使用 InfoPath Designer 发布表单模板。

通过在管理中心中的 InfoPath Forms Services 配置选项页上禁用已启用浏览器功能的表单模板的发布功能,服务器场管理员可限制将浏览器表单发布到 SharePoint Server 中的能力。此选项仅适用于表单库表单,并且使希望对表单模板拥有更多集中控制权的组织必须先请求管理员批准,然后才能将浏览器表单发布到 SharePoint Server。此选项不会阻止用户将仅适于 Filler 的表单发布到 SharePoint Server。只能使用 InfoPath Filler 来填写这些表单。

发布包含代码的浏览器表单

表单设计者可使用 Visual Studio Tools for Applications (VSTA) 将托管代码添加到其表单中。VSTA 是在安装 InfoPath 2010 时可选择安装的一个组件。可采用以下两种方式发布包含托管代码的表单模板:

  • 沙盒解决方案 网站集管理员可将包含代码的表单模板作为沙盒解决方案发布到表单库中。

  • 经管理员核准的表单 服务器场管理员可将表单模板上载到管理中心库,然后在网站集中将这些表单模板作为网站内容类型(具有“设计”权限级别的用户可选择这些类型)进行激活。

将表单模板作为沙盒解决方案

如果 Microsoft SharePoint Foundation 沙盒代码服务正在服务器场上运行,则网站集管理员可将包含代码的表单模板作为沙盒解决方案发布到表单库中。这使得作为网站集管理员的表单设计者可以在无需服务器场管理员批准的情况下发布表单。沙盒解决方案将在有权访问服务器对象模型子集的环境中运行。服务器场管理员可设置使用限制,以确保服务器免受恶意代码的攻击。

无法将包含必须具备完全信任权限才能执行的代码的表单模板发布为沙盒解决方案。它们必须经服务器场管理员批准。有关沙盒解决方案的详细信息,请参阅沙盒解决方案概述 (SharePoint Server 2010)

经管理员核准的表单模板

服务器场管理员可将包含代码(包括必须具备完全信任权限才能执行的代码)的表单模板上载到管理中心的表单模板库中。对于愿意牺牲部署的简单性来换取对表单和托管代码更多集中控制权的组织来说,这是首选方法。上载到管理中心的表单模板库中的表单模板称为经管理员核准的表单模板。

保存表单模板后,表单设计者可与服务器场管理员联系。服务器场管理员会审核该表单模板,以确保其符合组织性能和安全标准。如果表单模板符合这些标准,则服务器场管理员会针对相应服务器场将该表单模板上载到管理中心的表单模板库中。

服务器场管理员必须首先针对特定网站集激活表单模板,然后才能将该模板用于该网站集。在激活某个表单模板时,会将该表单模板放置在相应网站的表单模板库中。然后用户可将该表单模板作为内容类型添加到表单库中。具有“设计”权限级别的任何人员均可以添加表单模板内容类型。

有关详细信息,请参阅管理经管理员批准的表单模板 (SharePoint Server 2010)

填写表单

发布表单模板之后,用户即可开始填写基于该表单模板的表单。

浏览器与 Filler 表单

有两个主要的表单填写环境,即 Web 浏览器和 InfoPath Filler。可在 InfoPath Filler 中填写任何表单,但只能在 Web 浏览器中填写启用浏览器功能的表单。

通过在管理中心的 InfoPath Forms Services 配置页上配置相关设置,服务器场管理员可禁止在 Web 浏览器中呈现表单。这仅适用于已发布到表单库的用户表单模板,而不适用于经管理员核准的表单模板或发布到列表的表单模板。如果禁止呈现 Web 浏览器表单,那么当在用户计算机上安装了 InfoPath 时,表单将在 InfoPath Filler 中打开。

脱机填写表单

可使用 SharePoint Workspace 脱机填写 SharePoint 列表表单。可使用 InfoPath Filler 脱机填写表单库表单。

InfoPath 表单 Web 部件

也可使用 InfoPath 表单 Web 部件,在网页上承载 InfoPath 浏览器表单。有关 InfoPath 表单 Web 部件的详细信息,请参阅关于 InfoPath 表单 Web 部件(该链接可能指向英文页面) (https://go.microsoft.com/fwlink/?linkid=187903&clcid=0x804)(该链接可能指向英文页面)。

See Also

Concepts

规划 InfoPath Forms Services (SharePoint Server 2010)
沙盒解决方案概述 (SharePoint Server 2010)