InfoPath - 无法打开,表单定义(.xsf)包含错误

时间:2009-09-01 15:16:59

标签: xml infopath

我以某种方式设法打破我的infopath形式:(当我尝试打开它(预览模式和设计模式)时,我收到以下错误: InfoPath无法打开以下表单D:\ infopath \ formname.xsn。表单定义(.xsf)文件包含错误。

当我点击更多细节时,我得到了这个:

The form definition (.xsf) file contains elements, attributes, or structures that are not valid.

Error details:
The keyref 'ruleSet_5' does not resolve to a key for the Identity Constraint '{http://schemas.microsoft.com/office/infopath/2003/solutionDefinition}ruleset_name_key'.

Line 232, Position 3
</xsf:xDocumentClass>
--^

有什么方法可以解决这个问题吗?或者是我重新创建表单的唯一选择? 提前感谢任何建议!

3 个答案:

答案 0 :(得分:4)

是的 - 看过几次......

您需要编辑manifest.xsf。实际上,InfoPath表单是一个存档,因此将.xsn模板重命名为.cab,并以正常方式提取。现在编辑manifest.xsf以删除对第232行的keyref的引用。

最后,通过右键单击manifest.xsf并选择设计来重建表单(您可能会发现有多个错误 - 您只看到第一个报告回来,所以您可能需要重复以上每个错误)。最后,您需要重新发布。

答案 1 :(得分:2)

手动编辑.xsf文件并删除对“ruleSet_5”的任何引用并保存。尝试重新打开表单。

如果没有删除“ruleSet_5”的容器XML节点。

答案 2 :(得分:0)

我也遇到过这个问题,尝试编辑xsf(在本地驱动器中保存的表单,重命名为cab,并在文件夹中解压缩),但没有引用错误。另一个文件UpdateItem.xls有错误的引用,我删除了,但之后不知道如何重建表单。试图再次压缩文件夹,重命名为xsn,但没有工作。

最后,我发现其中一个&#34;观点&#34;在表单中仍然引用了已删除的数据连接。因此,如果表单有多个视图(编辑,显示等) - 签入页面设计选项卡,功能区中的第一部分 - 循环浏览所有视图并检查没有任何视图引用已删除的数据连接。