创建与浏览器兼容的表单模板的 InfoPath 专用视图
应用对象
本文内容
- 仅限 InfoPath 视图简介
- 使用方案
- 步骤 1:将仅 InfoPath 视图添加到浏览器兼容的表单模板
- 步骤 2:在 Web 浏览器中打开启用浏览器的表单模板时显示仅浏览器视图
- 步骤 3:在 InfoPath 中打开启用浏览器的表单模板时显示仅 InfoPath 视图
仅限 InfoPath 视图简介
可以设计一个表单模板来容纳两种类型的用户:已安装 office InfoPath Microsoft的用户和未安装的用户。 这种类型的表单模板称为与浏览器兼容的表单模板。 在与浏览器兼容的表单模板中,在设计模式下隐藏或禁用无法在 Web 浏览器中使用的任何 InfoPath 功能、设置和控件。 这样,你就不会在设计中使用它们。
准备好与用户共享与浏览器兼容的表单模板时,必须将其发布到运行 InfoPath Forms Services 的服务器,然后将其启用浏览器。 如果用户的计算机上安装了 InfoPath,则窗体将在 InfoPath 中打开。 如果未安装 InfoPath,则表单将在 Web 浏览器中打开。 无论哪种方式,表单模板都不包含在浏览器中不起作用的 InfoPath 功能、设置或控件。
如果预期许多用户在其计算机上安装了 InfoPath,则可能不希望将表单模板的设计限制为 Web 浏览器中支持的功能子集。 在这种情况下,可以创建浏览器兼容的表单模板的两个视图。 一个视图适用于在 Web 浏览器中打开表单模板的用户。 另一个视图将由在其计算机上安装 InfoPath 的用户独占使用。 此仅限 InfoPath 的视图永远不会显示在 Web 浏览器中。 因此,可以在此视图中使用你无法使用的 InfoPath 功能,例如用户角色或母版/详细信息控件。
在本主题中,你将了解如何在浏览器兼容的表单模板中设计专用的仅 InfoPath 视图。 此外,你将了解如何创建一个规则,用于检测打开表单模板的用户是否在其计算机上安装了 InfoPath。 如果检测到 InfoPath,用户将看到特定于 InfoPath 的视图。 如果未检测到 InfoPath,用户将在 Web 浏览器中看到特定于浏览器的视图。
使用方案
假设你为一家保险公司工作,并且你正在设计一个与浏览器兼容的表单模板来处理保险索赔。 与浏览器兼容的表单模板必须容纳从公司网站打开和填写索赔表单的投保人,以及查看和批准索赔表单中数据的内部用户。 你的期望是,外部用户没有在其计算机上安装 InfoPath,并且内部用户确实具有 InfoPath。 若要适应安装 InfoPath 和未安装 InfoPath 的用户,可以设计两个不同的表单模板-一个与浏览器兼容,一个与浏览器不兼容。 但是,设计一个浏览器兼容的表单模板(包括以下视图)会更容易、更省时:
视图 1:外部索赔视图 这是投保人登录您的网站并打开声明表单时看到的视图。 由于无法知道投保人在其计算机上安装了 InfoPath 的副本,因此表单模板必须与浏览器兼容。 也就是说,必须确保可以使用 Web 浏览器填写表单。
视图 2:内部声明处理视图 此视图适用于理赔处理者,他们审阅提交的理赔表单并将其路由到保险理赔员进行审批。 所有保险公司员工都在其计算机上安装了 InfoPath。 因此,可以为其设计专用的仅限 InfoPath 的视图。 与由投保人使用 Web 浏览器访问的声明提交视图不同,特定于 InfoPath 的视图永远不会显示在 InfoPath 中的任何位置,因此可能包含浏览器兼容表单模板中不可用的任何功能、控件和设置。
步骤 1:将仅 InfoPath 视图添加到浏览器兼容的表单模板
若要在与浏览器兼容的表单模板中创建仅 InfoPath 视图,请在“ 视图属性 ”对话框中更改设置。 此设置允许 InfoPath 用户查看视图,但会阻止视图在 Web 浏览器中显示。
打开与浏览器兼容的表单模板。
在“ 视图 ”菜单上,单击“ 管理视图”。
在 “操作”下的“ 视图 ”任务窗格中,单击“ 添加新视图”。
在“ 添加视图 ”对话框中,键入视图的名称,然后单击“ 确定”。
在 “选择视图” 列表中,双击刚刚创建的视图。
单击“常规”选项卡。
填写窗体检查框时,清除“视图”菜单上的“显示”。
注意
清除此检查框可防止未安装 InfoPath 的用户尝试切换到仅 InfoPath 视图。
选中“仅允许 InfoPath 功能 (视图在 Web 浏览器中不可用) 检查”框,然后单击“确定”。
像平常一样设计视图。
现在,可以在仅 InfoPath 视图中使用许多功能、控件和设置,这些功能、控件和设置在浏览器兼容的表单模板中不可用。 例如,你可以自由使用 “控件 ”任务窗格中的任何控件,而不只是在浏览器中工作的控件。 此外,在 “设计检查器 ”任务窗格中不会显示任何浏览器兼容性错误或消息。注意
尽管可以在仅限 InfoPath 的视图中使用大多数 InfoPath 功能,但应用于浏览器兼容表单模板的某些功能和设置整体仍保持禁用或隐藏状态。 例如,不能为整个表单模板启用数字签名或在视图中使用脚本,因为表单模板的其中一个视图与浏览器兼容。
若要向浏览器兼容的表单模板添加其他仅限 InfoPath 的视图,请重复步骤 2-9。
步骤 2:在 Web 浏览器中打开启用浏览器的表单模板时显示仅浏览器视图
在此过程中,你将了解如何创建一个规则,规定用户首次基于浏览器兼容的表单模板打开表单时看到的视图。 规则在首次打开窗体时运行,并在满足特定条件后运行。 在这种情况下,条件与用户是否在 Web 浏览器中打开启用了浏览器的表单模板有关。 如果是,则将显示表单模板的仅限浏览器视图。 此视图仅限于浏览器中支持的功能集。
- 打开包含仅 InfoPath 视图的与浏览器兼容的表单模板。
- 在 “工具 ”菜单上,单击“ 窗体选项”。
- 在 “类别 ”列表中,单击“ 打开并保存”。
- 在 “打开行为”下,单击“ 规则”。
- 在“ 打开窗体的规则 ”对话框中,单击“ 添加”。
- 在“ 规则 ”对话框中,为规则键入有意义的名称,例如 规则 1:切换到浏览器视图。
- 若要指定规则应何时运行,请单击“ 设置条件”。
- 在 “当此条件为 true 时应用规则”下的第一个框中,单击“ 表达式”。
- 第二个框中键入 xdEnvironment:IsBrowser () ,然后单击“ 确定”。
- 在“ 规则 ”对话框中,单击“ 添加操作”。
- 在 “操作” 列表中,单击“ 切换视图”。
- 在“ 视图 ”列表中,单击要切换到的浏览器视图,然后单击“ 确定”。
- 若要防止在当前事件) 的此规则 (之后运行任何规则,请在“规则”对话框中选择“此规则完成时停止处理规则检查”框。
打开表单模板并满足指定的条件(即用户环境为 Web 浏览器)时,将运行刚刚创建的规则。
步骤 3:在 InfoPath 中打开启用浏览器的表单模板时显示仅 InfoPath 视图
现在,你将向浏览器兼容的表单模板添加另一个规则。 此规则在首次打开窗体时运行,并在满足特定条件后运行。 在这种情况下,条件与打开启用浏览器的表单模板的用户是否在其计算机上安装了 InfoPath 有关。 如果已安装 Infopath,则会显示表单模板的“仅限 InfoPath”视图。 由于此视图仅在 InfoPath 中可见,因此可以包含 InfoPath 功能的全部范围。
- 打开包含仅 InfoPath 视图的与浏览器兼容的表单模板。
- 在 “工具 ”菜单上,单击“ 窗体选项”。
- 在 “类别 ”列表中,单击“ 打开并保存”。
- 在 “打开行为”下,单击“ 规则”。
- 单击“添加”。
- 在“ 规则 ”对话框中,为规则键入有意义的名称,例如 规则 1:切换到 InfoPath 视图
- 若要指定规则应何时运行,请单击“ 设置条件”。
- 在 “当此条件为 true 时应用规则”下的第一个框中,单击“ 表达式”。
- 第二个框中,键入 “不 (xdEnvironment:IsBrowser () ) ”。
- 单击“ 和”。
- 在第一个条件下的第一个框中,单击“ 表达式”。
- 第二个框中键入 “不 (xdEnvironment:IsMobile () ) ”,然后单击“ 确定”。
- 在“ 规则 ”对话框中,单击“ 添加操作”。
- 在 “操作” 列表中的“ 操作 ”对话框中,单击“ 切换视图”。
- 在 “视图 ”列表中,单击要切换到的仅 InfoPath 视图,然后单击“ 确定”。
- 若要防止在当前事件) 的此规则 (之后运行任何规则,请在“规则”对话框中选择“此规则完成时停止处理规则检查”框。
打开表单模板并满足指定的条件(即用户环境为 InfoPath,而不是 Web 浏览器或移动设备)时,将运行刚刚创建的规则。