【发布时间】:2011-12-24 19:09:36
【问题描述】:
我们在我们的 Web 应用程序(不是 Sharepoint)上使用 Infopath 表单。在升级表单时,我们在 Windows 7 机器上遇到了 Infopath 2010 的问题。
如果我们将新版本的表单发布到我们的服务器,然后在 Infopath 中打开表单(Windows 7 上只有 2010),会出现一个黄色信息栏,告诉我们有更新版本的表单可用,并且询问我们是否要“保存并更新”。问题是,这调用了表单的Save函数,但是如果出现验证错误,表单是无法保存的。如果用户在 Infopath 打开后立即单击此“保存和更新”按钮,Infopath 仍会尝试保存空表单。这会导致出现大量错误消息,从而无法提供非常好的最终用户体验。
但是,在所有错误消失后,重新打开表单后,它现在有了新版本。
我还注意到,对于某些用户来说,这个错误不会发生,Infopath 似乎只是在显示任何内容之前默默地更新表单。在测试机器上使用多个本地帐户(包括机器管理员)进行测试会产生错误,但是当我使用自己的域帐户(具有管理员权限)登录时,我没有收到错误。这让我怀疑问题出在 Windows 7 中的某些安全设置上。
我已尝试捕获 Infopath 提供的 OnVersionUpgrade 事件,但此事件在表单尝试保存之前不会触发,因此在这种情况下它对我没有帮助。我还尝试在表单选项 -> 版本控制下设置当有新版本可用时自动升级,但这似乎对表单的行为没有任何影响。
有什么方法可以强制 Infopath 在有新表单可用时自动升级表单,而无需先尝试保存表单?
【问题讨论】: