我们正在将一个非常复杂的Infopath模板从Sharepoint 2013迁移到Sharepoint Online。此模板需要域权限和大量自定义代码,因此无法使用启用浏览器的表单。
在Sharepoint 2013中,我们共享人们可以点击的模板文件(.xsn),它将在InfoPath Form Filler中打开,他们可以在那里完成工作。实际上没有人提交表单,因为数据保存在数据库中。
在Sharepoint Online中,.xsn文件将在Designer视图中打开。这是一个问题,因为用户是非技术人员,我们不希望他们必须点击预览或意外更改内容。
我们已在表单库中发布了表单,但是当有人尝试创建新表单时,它将在InfoPath Filler表单中正确打开,但会出现XML错误。
“表单包含无法解析的XML:在文本内容中找到无效字符。第1行,第5行MSCF”
当我签出底层模板时,我可以编辑模板,再次打开InfoPath Designer,没有任何问题。
我还导出了模板的XML并且没有发现XML错误,可以在InfoPath设计器中打开它,所以我对如何调试XML错误感到茫然。
因此,我们可以选择其中一条路线来解决问题:
1)继续将模板文件放在Sharepoint文件夹上,让用户点击它并填写数据,但必须在填充表单中打开,而不是在Designer中打开。
2)解决XML Form错误的问题(我怎么去调试呢?)我已经将模板导出为.XML文件,但是无法发现任何XML错误。
感谢。
答案 0 :(得分:0)
你的另一个选择是摆脱infopath并在经典UI模式下使用javascript使用自定义表单或开发一个与你的infopath实现相同功能的SPFX webpart?