Événement de Frontière Compensation(Compensation Boundary Event)
Attache un gestionnaire de compensation à une activité : si la compensation est déclenchée ultérieurement, le gestionnaire lié annule le travail achevé de cette activité. Double cercle avec des flèches de rembobinage.
L'Événement de Compensation en Bordure (Compensation Boundary Event) est différent des autres bordures : il ne réagit pas pendant l'exécution de l'activité — il enregistre la recette d'annulation pour après l'achèvement de l'activité. L'association en pointillés le relie à une activité de compensation dédiée (marquée de l'icône de rembobinage) qui réalise l'annulation lorsqu'une Émission/Fin de Compensation se déclenche.
Quand l'utiliser et l'éviter
Quand l'utiliser
Sur chaque activité dont les effets pourraient nécessiter une annulation métier ultérieure (réservations, débits, écritures).
Dans les sagas et transactions, pour déclarer l'opération inverse de chaque étape.
Lorsque l'annulation diffère selon l'activité — chacune reçoit son propre gestionnaire.
Quand NE PAS l'utiliser
Pour gérer les échecs pendant l'activité — c'est une Erreur en Bordure.
Lorsque le travail n'a pas d'inverse significatif — la compensation ne peut pas en fabriquer un.
Sur des activités qui ne s'achèvent jamais avant le point de rollback potentiel — rien à annuler.
Exemple métier
Déclarer comment annuler une réservation d'hôtel

Ouvrez cet exemple dans l'éditeur de processus HEFLO et explorez le diagramme de l'intérieur.
Ouvrir dans l'éditeur HEFLO →Étape par étape
- Réserver l'hôtel s'achève normalement ; sa Compensation en Bordure (mise en évidence) + le gestionnaire associé Annuler la réservation d'hôtel déclarent l'annulation.
- Plus tard, le paiement est refusé et la compensation est émise.
- Le moteur invoque le gestionnaire — la réservation est annulée même si la tâche s'était terminée bien avant.
Différences
Compensation en Bordure vs autres bordures
Les autres bordures surveillent une activité en cours. La bordure de compensation est dormante pendant l'exécution et ne compte qu'après l'achèvement, lorsque la compensation est déclenchée. Elle utilise en outre une association (en pointillés) vers son gestionnaire, non un flux de séquence.
FAQ
Qu'est-ce qui marque l'activité de gestion ?
Elle est définie avec isForCompensation et rendue avec le marqueur de rembobinage ; elle ne peut être atteinte par un flux de séquence normal — seulement par compensation.
Le gestionnaire voit-il les données de l'activité d'origine ?
Oui — les moteurs lui fournissent le contexte de l'activité achevée pour qu'il puisse annuler avec précision (par ex. l'identifiant de réservation).