如何在子列表中创建项目并从父工作流触发子工作流

How to create items in child list and trigger a child workflow from a Parent workflow

我想知道我们是否可以有一个父工作流,当调用它时会导致产生多个子工作流。有没有一种方法可以在 SharePoint 中实际实现它。所以基本上我想使用我的父工作流的一部分来触发另一个工作流——这个特定的工作流可以关联到同一个列表,有时它们可​​以关联到不同的列表和库……这会导致任何问题。

如果你们能就此主题分享您的想法和想法,那就太好了。

所以我希望它如何工作:-

假设当某事触发工作流 A 时,它会在触发工作流 B 的 SharePoint 列表中生成多个项目。所有新创建的项目都是 运行 工作流 B。此外,如果有一种方法可以调用链接到另一个库的另一个工作流 C。

如果您使用的是 SharePoint 2013 或更高版本:

  • 在列表中添加一个名称类似于 WFBtrigger 或 WFBstatus 的列。将其设置为默认值 "" 或 "Not run" 或类似的。
  • 创建您的工作流 A。完成后将 WFBstatus 更新为 "Pending" 或类似的。
  • 创建您的工作流 B。将其设置为在创建项目时启动。添加循环。在循环中等待 WFBstatus 更改为 "Pending"。做 "B's" 工作。将 WFBstatus 字段更新为 "Done".

现在当 A 被触发时,B 将在 运行 之后不久出现。

要触发另一个列表中的 C,只需让 A 或 B 更新 C 列表中的 "WFCstatus" 列,并让工作流 C 等待该列更改。

所以我有一些好消息!我能够弄清楚这一点,但它不是很直接

因此,SharePoint Designer 允许您使用创建函数在另一个列表中创建项目。我附上了截图 click here to view

因此,使用此功能,您可以在完全不同的列表或相同的列表中创建项目。但这有一个问题 - 一旦您使用 2013 工作流在子列表上实际创建了一个项目,它就不会触发子列表中的工作流。所以这已被明确禁用以防止称为工作流递归的情况。那么有解决办法吗?

是的!你有两个选择:- 1.Call 子工作流的 Rest 端点,示例方法:https://blogs.msdn.microsoft.com/sridhara/2014/08/21/fix-sharepoint-2013-workflow-recursion-prevention-part-2/

2.Use MS Flow 在子列表中创建流

希望它能帮助到那里的人!

PS:由于我们公司的一些奇怪原因,我们无法创建 2010 工作流 - 显然现代网站不支持 2010 工作流(我可能误会了)