我已经通过管理员路线将InfoPath表单发布到文档库。我可以在文档库上单击新表单,并在浏览器中加载我的自定义表单。当填充的表单保存回列表时,它会触发工作流程。工作流为另一个用户创建一个任务,以进入表单并完成缺少的字段(如果有的话。)
这里的关键是保存到库中的部分填充表单需要是在第一个任务中打开的相同表单。任务的链接字段将自动填充列表项的URL,该列表项是部分填充的表单的xml。该链接与将鼠标悬停在文档库中的项目时的链接相同,但是当从任务中单击它时,它尝试在InfoPath本身内部而不是在浏览器中打开表单。因此,在创建任务时,SharePoint会自动填充链接字段的一个问题。
理想情况下,我希望将部分填充的表单与任务本身相关联。通过将FormURN放在workflow.xml中,然后在任务上指定TaskType,我在使用infopath表单的工作流之前完成了这项工作。但是,这将基于模板创建新表单。如何让它使用列表项上的现有xml,该列表项是任务实际运行的工作流。
建议会很受欢迎。
答案 0 :(得分:1)
更改网址以转到此网址
{SITE_COLECTION_URL}/_layouts/FormServer.aspx?XmlLocation={FORM_URL}&DefaultItemOpen=1
答案 1 :(得分:1)
使用this page上的教程,并在表单ItemMetadata.xml上有一个名为url的字段,并在代码中设置
taskProperties.ExtendedProperties["url"] = SERVERURL + "/_layouts/FormServer.aspx?XmlLocation=" + FORMURL + "&DefaultItemOpen=1";
答案 2 :(得分:0)
这不是最优雅的解决方案,但确实运作良好。您需要修改表单以充当动作侦听器。 而不是创建任务,发送包含InfoPath链接的电子邮件。当用户打开表单时,自定义表单顶部看起来像带有复选框的任务表单,当表单更新时,激活工作流以检查复选框是否完整,如果是,则继续工作流。