SCP工作流程UserTask多个收件人

2020-08-17 03:17发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个要求,在某些情况下,如果UserTask有多个收件人,则该任务需要所有收件人批准该任务,然后才能进行下一个评估。 目前看来,第一个批准者一旦执行任务,工作流便会进行下一步。

作为一个简单的测试,我尝试使用并行网关拆分/连接设置和此设置拆分为两个单独的UserTask组件,一旦两个任务都执行完毕,就永远不会达到连接步骤和后续步骤。 即使此方法可行,也不理想,因为每个步骤可能有N个批准人。

有关如何处理此问题的SAP文档非常少,我搜索了许多博客和问答,但无济于事。

SCP工作流程有可能吗? 如果没有,建议的增强措施是选中一个复选框或打开UserTask详细信息,以指定该UserTask在一个批准或所有批准下均已完成。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我有一个要求,在某些情况下,如果UserTask有多个收件人,则该任务需要所有收件人批准该任务,然后才能进行下一个评估。 目前看来,第一个批准者一旦执行任务,工作流便会进行下一步。

作为一个简单的测试,我尝试使用并行网关拆分/连接设置和此设置拆分为两个单独的UserTask组件,一旦两个任务都执行完毕,就永远不会达到连接步骤和后续步骤。 即使此方法可行,也不理想,因为每个步骤可能有N个批准人。

有关如何处理此问题的SAP文档非常少,我搜索了许多博客和问答,但无济于事。

SCP工作流程有可能吗? 如果没有,建议的增强措施是选中一个复选框或打开UserTask详细信息,以指定该UserTask在一个批准或所有批准下均已完成。

付费偷看设置
发送
4条回答
1楼 · 2020-08-17 04:01.采纳回答

克里斯你好,
有多种方法可以实现此目的:

  • 如果要将任务发送给多个用户以供批准,并且只想在所有用户都批准/拒绝了用户任务时才继续前进,则可以使用并行网关。
  • 您可以让所有这些用户作为任务的收件人。 在所有用户完成任务之前,您都不想完成任务,因此需要对完成按钮进行适当的编码。 存储来自收件人的响应,直到所有响应者都完成或响应之前,才完成任务。

希望有帮助。

哎,真难
2楼-- · 2020-08-17 04:04

嗨Archana,

谢谢您的建议。 这给了我一个替代的主意。 我的想法不是使用并行网关,因为我可以并行地拥有未知数量的批准人,所以我将所有批准人都放在一个用户任务中。 一旦所有批准都获得批准,或者可以在第一次拒绝后立即退出,我们可以在自定义UI中编码的完成按钮将处理单个工作流程实例的完成。 关键是批准/拒绝按钮将具有必要的逻辑来决定是完成任务还是保持任务打开。

亦是此间程序员
3楼-- · 2020-08-17 04:03

尊敬的克里斯,

您需要多实例任务,很遗憾,这些实例尚不可用。 (多实例)引用的子流程在SCP工作流中也尚不可用。 因此,我们必须使用可用的BPMN palett作为解决方法,自行实现多实例任务。 那是

  • 将任务外包给自己的流程。 它至少应包含一个人工任务,然后是一个服务任务,该服务任务会在完成时通知调用过程
  • 使用服务任务在每个任务实例的循环中动态调用该任务过程
  • 使用中间消息事件收集另一个循环中的所有答案

这有点复杂,但是我们成功地在项目中实现了它,并且运行良好-区别在于,在开箱即用的默认监视应用程序中监视并不是那么容易,因为父进程与 任务过程。 尽管如此,我还没有看到在SCP工作流中实现这种行为的另一种可能性。

亲切的问候

Niko

Violet凡
4楼-- · 2020-08-17 04:01

Nikolai,

感谢您抽出时间回答我的问题。 根据您的建议和Archana的建议,我认为我有一个前进的方向,它将简化工作流程设计,并允许我在每个步骤中执行N个并发批准程序。 繁重的工作将由用于批准/拒绝的自定义UI完成,因为我们可以保持任务处于打开状态,直到所有批准者对任务进行操作。 我们可以在上下文中或多带带的数据存储中跟踪批准者,并在每个批准者单击按钮后检查是否有剩余批准者,然后再完成任务。 如果有任何批准者拒绝,我们可以立即执行必要的操作以终止WF。 这种方法还应该简化您的设计,因为WF将是独立的。

一周热门 更多>