Activiti / Camunda Grenzwert-Timer mit Variable @ ände

Ich habe eine spezielle Frage zu Timer-Grenzereignissen für eine Benutzeraufgabe in Activiti / Camunda:

Beim Starten des Prozesses stelle ich die Timer-Dauer mit einer Prozessvariablen ein und verwende Ausdrücke in der Begrenzungsdefinition, um die Variable aufzulösen. Das Grenzereignis wird für eine Benutzeraufgabe definiert.

<bpmn2:timerEventDefinition id="_TimerEventDefinition_11">
        <bpmn2:timeDuration xsi:type="bpmn2:tFormalExpression">${hurry}</bpmn2:timeDuration>
      </bpmn2:timerEventDefinition>

In einigen Fällen kann es vorkommen, dass die Frist (dueDate) verlängert wird, wenn der Timer bereits läuft, da der Empfänger mehr Zeit angefordert hat. Zu diesem Zweck möchte ich den Wert der Prozessvariablen ändern, die den Stichtag definiert.

Wie es passiert, wird die Variable bereits beim Prozessstart aufgelöst und auf das Grenzereignis gesetzt.

Weitere Änderungen der Variablen wirken sich nicht auf das Fälligkeitsdatum des Boundary Timers aus, da es in der Datenbank gespeichert ist und nicht aktualisiert wird, wenn sich der Wert der Variablen ändert.

Ich weiß, wie das Fälligkeitsdatum des Auftragselements über die Java-API aktualisiert wird, aber ich möchte einen allgemeinen Ansatz wie das Festlegen des Werts der Variablen bereitstellen.

Der häufigste Anwendungsfall für die Verlängerung der Frist ist, wenn der Boundary-Timer bereits ausgeführt wird.

Haben Sie eine Idee, wie Sie mit diesem Problem umgehen können?

Alle Tipps sind sehr begabt. Prost Chris

Antworten auf die Frage(6)

Ihre Antwort auf die Frage