Oracle APEX · · 3 Min.

APEX 26.2: Laufende Workflow-Instanzen migrieren

Eine neue Workflow-Version ist aktiv, aber viele Vorgänge laufen noch nach dem alten Modell. APEX 26.2 bietet einen gezielten Weg, ausgewählte Instanzen umzustellen, statt sie neu zu starten.

Genehmigungsprozesse dauern oft Tage oder Wochen. Währenddessen ändern sich Regeln, Pflichtangaben oder der Ablauf selbst. Bislang musste ein Team sorgfältig planen, wie bestehende Vorgänge mit einer neueren Workflow-Definition weiterlaufen. Oracle APEX 26.2 ergänzt dafür APEX_WORKFLOW.MIGRATE_INSTANCE: Eine einzelne laufende Instanz kann auf eine neuere Version des Workflows umgestellt werden, ohne den Vorgang von vorn zu starten.

Was die Migration steuert

Der API-Aufruf benötigt die Workflow-Instanz-ID. Optional lassen sich Workflow-Variablen aktualisieren, Parameter für die Zielversion setzen, eine Activity über ihre Static ID als Wiedereinstiegspunkt angeben und festlegen, ob der Workflow nach der Migration fortgesetzt wird. Standardmäßig bleibt die migrierte Instanz angehalten. Neue Pflichtparameter der Zielversion müssen mit Werten versorgt werden – eine Migration sollte daher nicht als bloßer Versionswechsel ohne Datenprüfung behandelt werden.

BEGIN
  apex_workflow.migrate_instance(
    p_instance_id               => 1001,
    p_resume_activity_static_id => 'MANAGER_REVIEW',
    p_continue_workflow         => FALSE
  );
END;
/

Die Beispiel-ID und Activity-Static-ID sind Platzhalter. Wählen Sie einen Wiedereinstiegspunkt, der im Zielmodell existiert und fachlich zu dem bereits erreichten Zustand passt. Wenn der neue Ablauf zusätzliche Pflichtparameter verlangt, übergeben Sie diese über p_workflow_parameters; angepasste Laufzeitwerte gehören in p_workflow_variables.

Wichtig: Der passende Wiedereinstieg lässt sich nicht allein aus der Versionsnummer ableiten. Prüfen Sie den aktuellen Status der Instanz und ordnen Sie ihn fachlich einer Activity der Zielversion zu. Ein falscher Einstieg kann Schritte überspringen oder erneut ausführen.

Vor dem Rollout einen Migrationsplan erstellen

Inventarisieren Sie zunächst aktive Instanzen und gruppieren Sie sie nach Workflow-Version, Status und bereits ausgeführten Seiteneffekten. Ein Vorgang, der schon eine Bestellung ausgelöst oder eine E-Mail versendet hat, darf nicht unbeabsichtigt in einen Pfad zurückspringen, der dieselbe Aktion wiederholt. Legen Sie anschließend pro Status fest, ob die Instanz migriert, in der alten Version abgeschlossen oder kontrolliert beendet werden soll.

  1. Neue Workflow-Version aktivieren und ihre Activities sowie Static IDs prüfen.
  2. Für repräsentative Instanzen den Zielstatus, Wiedereinstieg und benötigte neue Parameter festlegen.
  3. Migration zunächst mit angehaltenem Fortsetzen durchführen und Instanzstatus, Variablen und Parameter prüfen.
  4. Erst nach erfolgreicher Kontrolle gezielt fortsetzen; Monitoring für Fehler und fachliche Doppelverarbeitung einschalten.
  5. Den Ablauf mit parallelen, wartenden und bereits teilweise abgeschlossenen Vorgängen testen.

Die API ersetzt keine fachliche Kompatibilitätsprüfung und migriert nicht automatisch alle Instanzen einer Anwendung. Nutzen Sie sie gezielt, protokollieren Sie die getroffenen Zuordnungen und halten Sie einen manuellen Prüfpfad für Ausnahmen bereit. So kann ein Release neue Prozesslogik übernehmen, während laufende Anträge kontrolliert weiterbearbeitet werden.

Weiterführend: Oracle APEX 26.2 Neuerungen zu Workflows und die API-Referenz zu APEX_WORKFLOW.MIGRATE_INSTANCE.