【问题标题】:How do I submit an InfoPath form to multiple document libraries?如何将 InfoPath 表单提交到多个文档库?
【发布时间】:2010-11-21 17:47:42
【问题描述】:
我需要设计一个提交到不同 SharePoint 库的 InfoPath 表单。基本上需要有一个下拉列表,用户可以在其中选择特定部门。然后,选定的部门将指定将 InfoPath 表单提交到哪个 SharePoint 库以及通知谁来批准请求表单。表单获得批准后,需要将表单传输到另一个 SharePoint 库以供我们的薪资部门处理。有人可以指出我实现这一目标的正确方向。提前致谢
【问题讨论】:
标签:
sharepoint
workflow
infopath-forms-services
【解决方案1】:
处理此问题的一种方法是将 XmlFormView webpart 包装在自定义 webpart 中并响应 SubmitToHost 事件。为此,您需要将 InfoPath 中的提交选项设置为“托管环境”。这样,您可以将表单保存到基于代码和其他表单数据的任何库中。
有关包装 XmlFormView 的一些提示,请参阅"How We Did It – Automating Service Requests using InfoPath Forms Services"
至于选择哪个库,您可以在表单上有一个辅助数据源,该数据源指向部门的 SharePoint 列表和将提交表单的库的 URL。然后,您的代码可以从表单数据中获取要提交的列表。
至于到新库的审批路由,这听起来像是自定义工作流或 SPItemEvent 处理程序。对于第二种情况,您可以响应 ItemUpdated 事件并在新表单库中创建表单的副本。不确定您是否可以使用 SPD 2007 工作流程做到这一点。
希望这会有所帮助。
【解决方案2】:
拥有一个包含该表单的文档。上传到库并让事件或工作流在保存表单时移动表单,
或
拥有一个包含表单的文档库,并在其上过滤不同的视图。
【解决方案3】:
不确定您是否仍在寻找解决方案,但不介意加我的两分钱。我认为您可以使用提交选项中的规则在 InfoPath 中完成此操作。首先定义多个数据连接,每个库一个。接下来使用条件/操作对设置规则。就像如果组合框中的值是 x 然后使用提交数据连接 1 提交,...
至于发送通知,您可以将工作流附加到每个文档库。
希望对您有所帮助。