Cancelling a call activity

Hello folks,

I need your guidance/help for the following use case. I have a process which calls multiple call-activities which contain user tasks.

In all these call activities, users have option to cancel ongoing process/activity. If they do that, the entire process should be ended. Now I am aware that for call activities, cancel event is not possible. But ideally I want the following behaviour.


So whenever Callable A or Callable B is cancelled, the whole process should end.
My question is: how to achieve this in BPMN gracefully?

Some helpful notes from my side:

  1. Why call activities? why not subprocesses which can be turned into transactions? Because there are lot of process variables which need to move fluidly within these processes and Call Activities manage variable scopes better than embedded subprocesses. Also, in future there is a possibility that these call activities will be reused.
  2. There is one way to use throw BPMN errors from user tasks and then use error boundary events on user tasks to catch these. Subsequently these will be re-thrown from the call activities to catch them in main process and to end the process (something like a process diagram attached below). But I am not sure whether it’s possible or is the best way.
  3. I have referred to the post Cancelling the order in intermediate stage. But this post is very old. Is this still my best option?

Thanks and Regards
Chaitanya Joshi

Hi Chaitanya,

Did you find the solution for the above.
If yes please let me know.

Thanks,
Gowtham

Hi Gautham/Chaitanya,

I am also having similar type of problem. Can you please help me out?
Giving link for the same.

Regards,
Hitesh