用 Access 数据库的值填充列表框、下拉列表框或组合框

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

在 InfoPath 表单中,您可以填充列表框、 下拉列表框或组合框中的数据查询数据连接到Microsoft Office Access 2007 (.accdb 格式) 数据库或 Access 数据库 (.mdb 格式) 的早期版本中保存。

本文内容

概述

兼容性的注意事项

开始之前

步骤 1︰ 添加查询数据连接

步骤 2︰ 配置控件

可选︰ 设置筛选器以限制在控件中的项目

概述

列表框、 下拉列表框或组合框将显示在填写 InfoPath 表单时,用户可以选择的项目。在设计表单模板时,您可以配置这些类型的控件以显示来自辅助数据连接到 Access 数据库的数据。

辅助数据连接是您在表单模板中添加的指向外部数据源的任何数据连接。您可以将辅助数据连接配置为检索数据,以供用户在填写基于表单模板的表单或者向外部数据源(如 Web 服务)提交表单数据时使用。

向表单模板查询数据添加辅助数据连接,InfoPath 将创建辅助数据源包含数据字段和对应于该数据库中存储数据的方式的组。查询数据连接从 Web 服务检索数据,然后将该数据存储在表单的辅助数据源。

您可以将辅助数据连接配置为将查询结果保存在用户计算机上,这样用户在未连接网络时也可以访问数据。不过,这取决于数据的性质,有时候您可能希望仅当用户连接到网络时才显示查询结果。

安全注释 : 如果您正在使用辅助数据连接以从外部数据源检索敏感数据,您可能想要禁用此功能,以帮助防止未经授权使用的数据,以防丢失或盗取计算机。如果您禁用此功能,数据将用户连接到网络时才可用。

如果您想要限制的列表框控件中的项目数,您可以使用筛选器。当您需要显示的基于用户选择的条件的查询返回的数据子集,请使用筛选器。该条件都必须绑定到数据源中的字段的另一个控件 (如列表框、 组合框、 下拉列表框中或文本框) 中所选项目。

由于辅助数据源中的数据结构必须匹配的数据库中存储数据的方式,不能修改现有字段或辅助数据源中的组。在本文的另请参阅部分找到有关数据连接和数据源的详细信息的链接。

返回页首

兼容性考虑

只有设计不是浏览器兼容的表单模板时,才能添加到 Access 数据库的查询数据连接。

返回页首

开始之前

在使用 Access 数据库中的数据填充表单模板上的控件前,您需要从数据库管理员那里获得以下信息:

  • 数据库的名称和位置。

    注意: 如果网络上的其他用户将创建基于该表单模板的表单,请确保您的数据库是这些用户可以访问。

  • 为控件提供值的表或查询的名称。配置查询数据连接时将使用此表或查询作为主表或查询。

  • 其他表或查询从中主表或查询可能需要数据的名称。在大多数情况下,在数据库中已建立了表关系。如果您需要手动之间建立关系的主表或查询和另一个表或查询,您需要表或查询的相关的字段的名称。

返回页首

步骤 1:添加查询数据连接

如果您不具有您可以使用表单模板中的现有查询数据连接,使用以下过程向表单模板中添加辅助数据连接查询数据。如果您的表单模板已有您可以使用辅助数据连接,则可以跳过此部分并转到步骤 2︰ 配置控件

  1. “工具”菜单上,单击“数据连接”

  2. 数据连接对话框中,单击添加

  3. 在“数据连接向导”中,单击“新建连接”,单击“接收数据”,然后单击“下一步”

  4. 在向导的下一页上,单击“数据库(仅 Microsoft SQL Server 或 Microsoft Office Access)”,然后单击“下一步”

  5. 在向导的下一页上,单击“选择数据库”

  6. “选择数据源”对话框中,浏览以找到数据库所在位置。

    注意: 如果您的数据库存储在网络位置中,浏览到通用命名约定 (UNC) 路径的位置。不要浏览到通过映射的网络驱动器的网络位置。如果您使用的映射的网络驱动器 (即,指定一个字母到网络驱动器,如 h: 或 z:),将搜索该特定映射的网络驱动器上的数据库的用户创建基于该表单模板的表单。如果用户没有网络驱动器映射中完全相同的方式,窗体将找不到该数据库。

  7. 单击数据库的名称,然后单击“打开”

  8. “选择表格”对话框中,单击要使用的主表或查询,然后单击“确定”

  9. 在向导的下一页上,选中“显示表列”复选框。

    默认情况下,表或查询中的所有字段都添加到主数据源的表单模板中。

  10. 清除您不想在主数据源中包含的域所对应的复选框。

  11. 添加想要在查询数据连接中包含的任何其他表或查询。

    如何?

    1. 单击“添加表”

    2. 添加表或查询对话框中,单击子表的名称,然后单击下一步。InfoPath 尝试通过匹配两个表中的字段名称设置关系。如果不想使用建议的关系,选择该关系,,然后单击删除关系。若要添加的关系,请单击添加关系。在添加关系对话框中,单击相应的列中,在每个相关字段的名称,然后单击确定

    3. 单击“完成”

    4. 要添加其他子表,请重复这些步骤。

  12. 单击“下一步”

  13. 要使查询数据连接的结果在表单未连接到网络时仍然可用,请选中“在表单模板中存储一份数据副本”复选框。

    安全注释 : 选中此复选框在用户计算机上存储的数据,表单中使用此数据连接。如果窗体检索敏感数据从该数据连接,您可能需要禁用此功能来帮助保护数据,以防丢失或盗取计算机或否则未经授权的用户访问。

  14. 单击“下一步”

  15. 在向导的下一页上,为此辅助数据连接键入一个描述性名称,然后验证“摘要”部分中的信息是否正确。

  16. 要将表单配置为在打开时自动接收数据,请选中“在打开表单时自动检索数据”复选框。

返回页首

步骤 2:配置控件

  1. 如果表单模板具有多个视图,单击视图菜单上,转到与控件视图您要在其中显示辅助数据源中的数据视图名称

  2. 在表单模板上双击要配置的列表框、下拉列表框或组合框控件。

  3. 单击“数据”选项卡。

  4. “列表框项”下单击“从外部数据源查找值”

  5. “数据源”列表中单击要使用的数据源。

  6. 单击选择 XPath 数据源图像框旁边。

  7. “选择域或组”对话框中,通过以下方式之一,指定包含要向用户显示的数据以及要提交到外部数据源的数据的域或包含此类域的组。

    指定用户将看到的数据位于用户提交的相同数据

    • 单击某个域,再单击“确定”

    指定用户将看到的数据位于不同于用户提交的数据

    注意: 在这种情况下,用户将看到的数据来自组中的某个域,用户要提交的数据则包含在同一组的其他域中。

    1. 单击一个组,然后单击“确定”

    2. 控件属性对话框中,单击选择 XPath 数据源图像框旁边。

    3. “选择域或组”对话框中,单击包含用户将要提交到外部数据源的数据的域,再单击“确定”

    4. 控件属性对话框中,单击选择 XPath 数据源图像显示名称框旁边。

    5. “选择域或组”对话框中,单击包含将要显示在控件中的数据的域,再单击“确定”

  8. 如果“显示名称”框中的域包含具有相似显示名称的值,而您希望仅显示唯一名称,则请选中“仅显示具有唯一显示名称的条目”复选框。

返回页首

返回页首

可选︰ 设置筛选器以限制在控件中的项目

  1. 在表单模板上双击要配置的列表框、下拉列表框或组合框控件。

  2. 单击“数据”选项卡。

  3. 单击选择 XPath 数据源图像 框旁边。

  4. “选择域或组”对话框中,单击为控件提供值的域所在的域或组,然后单击“筛选数据”

  5. “筛选数据”对话框中,单击“添加”

    注意: 如果您想要添加到现有的筛选条件,单击要应用,筛选器,然后单击修改

  6. “指定筛选条件”对话框的第一个框中,单击要筛选的数据所在域的名称。

  7. 在第二个框中,单击要使用的筛选器类型。

  8. 在第三个框中,单击您想要将应用于筛选的条件的类型,然后键入条件。

  9. 要配置的筛选器的多个条件,请单击,然后执行下列操作之一︰

    • 若要将现有的条件和新条件应用于您的筛选器中,单击,然后添加新的条件。

    • 若要将现有的条件或新条件应用于您的筛选器中,单击,然后添加其他条件。

  10. 单击确定以关闭对话框。

  11. 要测试所做的更改,请单击“常用”工具栏上的“预览”,或者按 Ctrl+Shift+B。

    在新窗口中打开的表单模板。

  12. 在预览窗口中,选择要测试筛选器正常工作的筛选器控件中不同的值。

    筛选器工作不正常

    如果包含一个筛选器的控件中的值不正确,或者因为有太多值或没有足够的值,请尝试以下︰

    • 如果您在您的筛选器中使用多个条件,删除所有而不是一个条件以检查从该单个条件返回的正确值。如果第一个条件返回正确的值,然后添加其他条件,并对它进行测试。

    • 筛选器使大写和小写字符之间的差异。如果您想要显示的大写或小写字符开头的数据,创建筛选器大写字母条件在指定筛选条件对话框中,选择,然后创建一个小写字母条件。

    • 如果恰好相反筛选的值您的期望,例如从所有,而不是从单个供应商的产品的供应商显示的产品,更改在条件中的筛选器类型。例如,如果您的条件使用筛选器类型等于并收到太多产品,请尝试使用筛选器类型不等于

返回页首

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

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

此信息是否有帮助?

谢谢您的反馈!

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

×