在WSP中将包含提升字段的InfoPath表单部署到SharePoint

时间:2010-02-09 20:19:50

标签: sharepoint infopath

我一直在努力将InfoPath表单作为内容类型发布到SharePoint网站,以尝试查看会发生什么。它可以正常工作,更新库中的表单实例将更新库列。没有InfoPath中提升的属性,但我无法看到此映射的工作原理。

我的目标是将CAML定义的内容类型作为WSP的一部分。内容类型将安装预配置,具有InfoPath中的提升字段。在填写这些表单时,将会有一些不在表单中但在工作流的内容类型中需要的其他字段。实际上,内容类型中的额外字段并不重要,一次一步。

我已尝试在表单选项和网络发布中指定提升的字段。然后通过网站手动创建表单内容类型并将其链接到上传的表单模板。我希望当表单运行时,它会检查列表并创建列,但它不会这样做。 我还尝试将SharePoint发布为内容类型,然后创建自己的内容类型,引用发布它的模板URL。手动创建网站列并将其与我的内容类型链接。无论我如何尝试,InfoPath表单都不会将提升的字段链接到我创建的列。

如果没有通过InfoPath正确发布,我无法让自己的映射工作。我真的想重现SharePoint发布的功能而不了解它如何映射字段。如果我不能通过网站实现这一点,我很难用CAML将其作为一个可安装的解决方案,客户可以激活WSP并拥有网站,库,内容类型,列表,表格,工作流程预先创建,所有设置都可以使用。我已经在其他项目中执行此操作,而不是使用实际的表单库。

任何建议都非常适合。

[编辑] 如果涉及到它,我可能不得不求助于(不寒而栗)在表单中有一些代码,在关闭时会将特定字段写入列表并完全取消“促进字段”以支持我自己可能会这样做,但事实上会更糟,但它会起作用。

1 个答案:

答案 0 :(得分:1)

列映射可能适用于字段guid而不是字段名称 - 您通过浏览器创建的任何字段和内容类型都将被分配随机ID,这显然无助于映射。

最好的方法可能是使用infopath发布手动完成所有操作,然后使用解决方案生成器导出表单库。这应该为您提供一些可以带入WSPBuilder的一致性,并根据需要进行调整。