Question about notation | compensation event

Hello there, I need your knowledge about the notation.
It is about the compensation event. In the example shown, compensation means what exactly? How long can the activity “do that” be compensated in that process?

Can the compensation be done later in the process?

And if so:
How do I limit the possibility e.g. just before activity “7”?

Hi @germans

A Compensation boundary event like that needs to be triggered by a compensation throwing event.
Later in the process after do that has been completed if you throw a compensation event the engine will find all tasks completed with the compensation catching event and then run the associated Cancel Thattask.

Compensation will only run if a task has been successfully completed.

In the diagram you’ve posted it would never trigger, because there’s no throw event.

2 Likes

Hi @Niall, thank you very much. Am I on the right track now?

1 Like

That looks pretty good you could also just add an intermediate event as part of the flow - but i always love seeing an event sub process so go for it.

1 Like