设计要合并的表单

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

通过使用表单合并功能,用户可以将许多不同表单中的数据合并到一个表单中。当用户想比较或汇总若干相关表单中的数据时,此功能非常有用。例如,如果管理者的团队每周都要填写状态报告表单,则该管理者可以使用此功能将那些表单中的数据合并成一份汇总报告,以呈交给其主管者。

本文内容

用户合并表单的方式

设计时的注意事项

用于域和组的合并操作

为控件自定义合并设置

用户合并表单的方式

表单位置决定了用户可如何将该表单与其他表单进行合并。下表对可存储 Microsoft Office InfoPath 表单的不同位置,以及用户可如何合并存储在这些位置中的表单进行了说明:

  • 本地硬盘驱动器或网络位置    用户必须首先在 InfoPath 中打开某个表单。此表单称为目标表单,因为其他表单将合并到该表单中。然后,用户可以在“文件”菜单上单击“合并表单”,然后选择其他表单(称为源表单)以与目标表单合并。

    注意: 也可以打开一个新的空白表单,然后使用相同的过程将此空白表单与基于相同表单模板的其他表单进行合并。

  • SharePoint 网站上的文档库    表单可以存储在 Windows SharePoint Services 3.0、Microsoft Office SharePoint Server 2007 或 Microsoft Office Forms Server 2007 网站上的文档库中。在存储表单的文档库的“视图”菜单中,用户可以选择“合并文档”视图,然后选择要合并的表单。在用这种方法合并表单时,用户不必像在上一个示例中说明的那样首先打开目标表单。

    注意: 在设计浏览器兼容的表单模板时,用户可以使用 Web 浏览器填写基于该表单模板的表单。对于 SharePoint 库中基于与浏览器兼容的表单模板的表单,其合并过程与用户在 InfoPath 中打开和填写的表单的合并过程相同。

  • Microsoft Office Outlook 2007 中的 InfoPath 电子邮件表单    用户可以合并 Office Outlook 2007 中的多个表单,方法是在存储表单的文件夹的视图中选择表单,然后单击“操作”菜单上的“合并表单”

注意: 在用户合并表单时,不会删除原始表单。合并表单中的数据将添加到目标表单中。建议用户将包含合并数据的目标表单另存为新表单,以便不覆盖原始表单中的数据。

返回页首

设计时的注意事项

既然熟悉了用户根据表单位置合并表单的方式,那么,了解如何才能使特定控件支持合并,以及在合并表单时如何合并个别字段中的数据就显得特别重要。此信息(以及了解用户打算如何使用合并的数据)对于创建使用户能够轻松合并表单的模板有着重要作用。

在向表单模板添加控件时,会将该控件绑定到表单模板数据源中的域或组。如果设计一个新的空白表单模板,则在添加控件时,将会为你创建数据源。如果设计基于外部数据源(例如 XML 架构或 Web 服务)的表单模板,则必须将添加到表单模板的控件绑定到该数据源中的域或组。

为控件启用合并设置时,你实际是启用合并控件所绑定到的域或组的设置。 合并设置可能因域或组及其数据类型而异。 某些类型的域或组不支持合并。

为了更好地了解如何运用表单合并,假设您设计了一个零用金报销单表单模板,该模板包含一个文本框控件,此控件绑定到数据源中的非重复域并使用文本数据类型。此域用于存储每个用户的各笔记录费用的工作用途。对于此示例,我们将此域称为“用途”,并将带有“业务目的” 标签的文本框控件绑定到此域。

假设有三个用户( 张志远、 孙磊 和 吕玉笛)正在根据表单模板填写表单。在“业务目的” 域中, 张志远 键入了“会议”, 孙磊 键入了“客户拜访”, 吕玉笛 键入了“出差”。因为默认情况下,使用文本数据类型的文本框控件不支持数据合并,所以合并这些零用金报销单表单的管理者在“业务目的” 域中将只看到一个值,即目标表单中已包含的值。例如,如果 吕玉笛的 表单是目标表单,则只有 吕玉笛 输入的值才会出现在合并表单的此域中。

通过为控件所绑定到的域或组自定义合并设置,用户可以合并多个表单中该域或该组中的数据。在此示例中,可以为“业务目的” 文本框控件自定义合并设置,以便用户可以合并包含该域的表单中的数据。通过使分隔符出现在每个合并值之间,可以进一步自定义合并设置。分隔符可以是空格、逗号、分号、垂直线、换行符、分段符或下划线。例如,如果 张志远 在“业务目的” 域中键入了“会议”, 孙磊 键入了“客户拜访”, 吕玉笛 键入了“出差”,您对该域启用了合并,并指定逗号为分隔符,则所生产的合并数据将显示为“出差,客户拜访,会议”(如果 吕玉笛的 表单为目标表单)。

注意: 逗号和分号分隔符后面将会自动添加空格。

虽然添加分隔符可以帮助区分特定值,但可以为域或组中所包含的每个值添加唯一前缀,以进一步自定义如何合并数据。在添加前缀时,可以从另一个域中选择值,或者输入要用作前缀的函数。通过添加前缀,可以帮助用户确定原始数据的来源。例如,可以使填写表单的人员的名称(在某个域中输入的值)显示为另一个域中所包含的值的前缀。那么,在合并若干个表单时,源表单中的值将显示合并值,并且那些值将具有标识符。

例如,如果将存储用户名称的域确定为前缀,并创建一个在该值的每个实例后面添加冒号的 concat 函数,则用户能够轻松地看到值的输入者,甚至在合并了若干个表单后仍然如此。在此示例中,如果 吕玉笛的 表单是目标表单,则所产生的带前缀的数据将显示为“出差, 孙磊:客户拜访, 张志远:会议”

注释: 

  • 如果在表单中保存合并数据,然后再次合并表单,则不会将前缀添加到目标表单(在本例中是指 吕玉笛的 表单),以避免添加多余的前缀。

  • 如果用户合并位于硬盘驱动器、网络位置或 SharePoint 网站上的 InfoPath 表单,或合并 Office Outlook 2007 中的 InfoPath 电子邮件表单,则会按照选择表单的顺序的相反顺序显示所生成的合并数据。例如,如果用户选择三个表单,首先选择卢宁的表单,然后选择崔根姬的表单,最后选择赵强的表单,则在所生成的包含合并数据的表单中,将首先显示赵强的数据,然后显示崔根姬的数据,最后显示卢宁的数据。

  • 除了可以为个别控件自定义合并设置之外,还可以对整个表单模板禁用表单合并,以阻止用户合并基于该模板的表单。如果禁用表单合并,则填写表单的用户将无法使用“文件”菜单上的“合并表单”命令。

  • 若要确保正确地配置表单模板以合并其他表单,请通过以下方法进行测试:发布表单模板,然后根据该表单模板创建并保存至少 5 个含有样本数据的表单。 保存表单后,在设计模式中打开表单模板,然后在“标准”工具栏单击“预览”。 在预览模式下,合并你的示例表单。 如果正确合并表单,你可以发布表单模板,并使你的用户可以根据你的表单模板创建表单。

  • 为用户提供如何合并表单的过程。 你可以在测试用于合并的表单模板时开发此过程。

返回页首

用于域和组的合并操作

以下合并操作会因域或组中的数据类型而异。

配置任何域或组类型的合并设置时,你可以选择忽略源表单中的值,并保留目标表单中的值,也可以选择自定义合并设置。 下表描述了每种域或组类型的自定义合并设置。

域或组类型

可用的合并设置

可以绑定到该域类型的控件的示例

非重复的域

  • 组合目标表单和源表单中的值

    • 忽略空字段

    • 在项目之间添加分隔符

    • 向每个项目添加前缀

  • 文本框

  • 下拉列表框

  • 组合框

重复域

  • 在目标表单中的值前面或后面插入源表单中的值

    • 删除空字段

  • 项目符号列表

  • 编号列表

  • 普通列表

  • 多选列表框

非重复的 XHTML 域

  • 组合目标表单和源表单中的值

    • 忽略空字段

    • 在项目之间添加分隔符

    • 向每个项目添加前缀并设置前缀文字的格式

格式文本框

重复的 XHTML 域

  • 在目标表单中的值前面或后面插入源表单中的值

    • 删除空字段

  • 项目符号列表

  • 编号列表

  • 普通列表

  • 重复表

属性字段

  • 用源表单中的值替换目标表单中的值

    如果用户选择多个表单,则用户选择的最后一个表单中的值将会保留在目标表单中。 例如,如果用户选择三个表单,从卢宁的开始,然后依次选择崔根姬的和赵强的,赵强的表单中的属性域的数据将替换目标表单中的原始值。

    注意: 根据合并表单的人员的操作系统,保留值可能会有所不同。

  • 组合目标表单和源表单中的值

    • 忽略空字段

    • 在项目之间添加分隔符

    • 向每个项目添加前缀

任何控件都可以有一个属性域类型。

非重复的组

  • 组合目标表单和源表单中的值

  • 可选节

重复的组

  • 在目标表单中的值前面或后面插入源表单中的值

    • 删除空字段

  • 项目符号列表

  • 编号列表

  • 普通列表

  • 多选列表框

  • 重复表

返回页首

为控件自定义合并设置

使用此节中的过程为标准控件和重复控件自定义合并设置。

注意: 为控件启用合并设置时,你实际是启用合并控件所绑定到的域或组的设置。 合并设置可能因域或组及其数据类型而异。 某些类型的域或组不支持合并。 你也可以通过编辑数据源中域或组的属性来更改合并设置。 要执行此操作,请右键单击“数据源”任务窗格中的域或组,在快捷菜单上单击“属性”,然后在“规则和合并”"选项卡上,单击“合并设置”。

标准控件包括通常与收集和显示信息关联的控件。这些控件包括文本框、列表框、复选框和按钮。重复控件和可选控件包括列表控件、重复表、重复节和可选节。这些控件允许用户在填写表单时插入列表项、行、记录集和可选信息。例如,在零用金报销单表单模板中,可以使用重复表,让用户根据需要添加多个行,以输入用户的特定费用项数。

注释: 

  • 某些控件绑定到无法合并的域。例如,无法合并日期选取器控件或复选框控件中的值,因为无法合并它们所包含的数据类型。绝对不能合并包含数字签名的控件,因为这样做会使数字签名无效。

  • 某些控件包含其他选项。例如,在为格式文本框控件自定义合并设置时,也可以选择字体格式选项。

为标准控件自定义合并设置

标准控件包括文本框、格式文本框和组合框。有关更多信息,请参阅本文中的“用于域和组的合并操作”

注意: 在节内添加的控件(换言之,父控件的子控件)只能在已为父控件启用合并的情况下才支持合并。

  1. 双击要修改的控件。

  2. 在“控件属性”对话框中,单击“高级”选项卡。

  3. 在“合并表单”下,单击“合并设置”。

  4. “用于此域的操作”下面,单击“组合目标表单和源表单中的值”

  5. 若要排除不包含数据的域,请在“组合选项”下面,选择“忽略空白域(推荐)”复选框。

  6. “分隔符”列表中,选择要在目标表单中显示的控件内的值之间出现的分隔符。

    技术详细信息

    在合并多个表单中的数据时,添加分隔符可以帮助用户确定输入数据的用户。例如,如果为特定控件选择逗号(“,”),则在合并基于表单模板的多个表单时,将用逗号分隔该控件中的数据。

  7. 在用户合并基于此表单模板的表单时,若要在控件中出现的每个值之前加上前缀,请选择“为每项添加以下前缀”复选框,然后选择要添加前缀的项目。

    操作方法

    1. 单击“插入公式公式按钮

    2. “插入公式”对话框中,执行下列操作之一:

      • 若要在公式中使用域,请单击“插入域或组”,然后在“选择域或组”对话框中单击要使用的域,并单击“确定”

      • 若要在公式中使用函数,请单击“插入函数”,从“插入函数”对话框中选择要使用的函数,然后单击“确定”

        提示: 如果函数需要参数,请在“插入函数”对话框中选择函数,单击“确定”,然后在“插入公式”对话框内的“公式”框中,双击添加的函数,并单击域或组。请在“请参阅”部分中查找有关函数的详细信息的链接。

      • 若要在公式中插入值或数学运算符,请在“公式”框中键入值或代表数学运算的符号。

    运算

    符号

    添加

    +

    -

    *

    /

    • 注意: 如果公式使用除法 (/) 运算符,请确保在该运算符的前后各留一个空格。如果除法运算符前后无空格,InfoPath 可能将“/”解释为 XPath 位置步骤的分隔符,而不是除法运算符。

    • 若要检查公式的语法是否正确,请在“插入公式”对话框中,单击“验证公式”。

为标准节自定义合并设置

标准节是包含其他控件的容器。节可以包括“控件”任务窗格中列出的任何控件,包括其他节。有关更多信息,请参阅本文中的“用于域和组的合并操作”

注意: 在节内添加的控件(换言之,父控件的子控件)只能在已为父控件启用合并的情况下才支持合并。

  1. 双击要修改的节。

  2. “节属性”对话框中,单击“高级”选项卡。

  3. 在“合并表单”下,单击“合并设置”。

  4. “用于此组的操作”下面,单击“组合源表单和目标表单中组的内容(默认)”

    注意: 此组中的每个域和组的合并设置将决定如何合并数据。

为重复控件和节自定义合并设置

重复控件包括重复节、重复表和项目符号列表。有关更多信息,请参阅本文中的“用于域和组的合并操作”

注意: 在节内添加的控件(换言之,父控件的子控件)只能在已为父控件启用合并的情况下才支持合并。

  1. 双击要修改的控件。

  2. 在“控件属性”对话框中,单击“高级”选项卡。

  3. 在“合并表单”下,单击“合并设置”。

  4. “用于此重复组的操作”下面,单击“将源表单中的组插入目标表单(默认)”

  5. 若要确定目标表单中哪里将出现源表单中的组,请在“插入选项”下面,单击“在目标表单的组后插入”“在目标表单的组前插入”

  6. 若要从合并表单中除去空值,请选择“删除空白组(推荐)”复选框。

  7. 若要合并其控件包含相同值的组,从而以减少冗余数据,请选择“组合具有相同域值的组”复选框,然后单击“要比较的域”旁边的按钮以选择要合并的域。

为可选节自定义合并设置

可选节包含其他控件。用户可以在填写表单时插入或删除可选节。有关更多信息,请参阅本文中的“用于域和组的合并操作”

注意: 在节内添加的控件(换言之,父控件的子控件)只能在已为父控件启用合并的情况下才支持合并。

  1. 双击要修改的控件。

  2. 在“控件属性”对话框中,单击“高级”选项卡。

  3. 在“合并表单”下,单击“合并设置”。

  4. 在“用于此组的操作”下面,单击“组合源表单和目标表单中组的内容(默认)”。

返回页首

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×