Ablauf einer Regel – Warteschlange, Wiederholungen und Wartezeit
Regeln laufen nicht sofort. Sie werden eingereiht, sperren das Objekt während der Ausführung, wiederholen vorübergehende Fehler und können bis zu einer Stunde warten.
Schritt für Schritt
Prüfen, was eine Regel tatsächlich ausgeführt hat
- Öffne Erweitert → Automatisierungsprotokolle. Die Liste wird alle 30 Sekunden aktualisiert. Der Umschalter befindet sich in der Werkzeugleiste; sein Tooltip ist englisch:
Auto-refresh ON (30s)/Auto-refresh OFF. - Klappe die Filter über Filter (Trichtersymbol) auf und wähle unter Workflow die gewünschte Regel. Einträge haben das Format
#id - Name; eine Regel ohne Namen heißt Kein Name. - Grenze über Datumsbereich ein: Heute, Gestern, 7 Tage, 14 Tage, 30 Tage oder Benutzerdefiniert (mit den Feldern Von und Bis).
- Wähle unter Ergebnis Erfolgreich, Fehlgeschlagen, Teilweise, Bedingungen nicht erfüllt oder Wartet. Beachte: In der Tabelle erscheint der rohe Datenbankcode
PASSED,FAILED,PARTIAL,CONDITIONS_FAILEDoderWAITING. - Prüfe die Spalten Ereignis, Ergebnis, Dauer und Ausgelöst am. Unter der Auslösezeit erscheint eine zweite Zeile Ausgeführt: …. Die Zeit dazwischen entspricht der Wartezeit in der Warteschlange oder einer geplanten Verzögerung.
- Klicke auf das Augensymbol (Details anzeigen). Es öffnet sich ein Fenster mit englischem Titel:
Execution Log #<number>. - Lies die Abschnitte der Reihe nach: Allgemeine Informationen, Zeitstempel (Ausgelöst am / Ausgeführt am), Fehlermeldung (falls eine Aktion gescheitert ist), Bedingungsergebnisse (Tabelle Position / Bedingung / Methode / Erwartet / Tatsächlich / Ergebnis; die letzte Spalte zeigt eine Markierung
PASSoderFAIL), Aktionsergebnisse und Ereignisdaten (zwei JSON-Blöcke im Rohformat). - Schließe das Fenster über Schließen.
Ein einzelner roter Eintrag muss keinen dauerhaften Fehler bedeuten: Vorübergehende Fehler werden erneut versucht. Prüfe daher, ob ein späterer Versuch derselben Regel mit PASSED endete.
Eine Folge voneinander abhängiger Aktionen erstellen
Beispiel: „Sendung erstellen, danach Sendungsnummer versenden“.
- Öffne Tools → Automatisierung → Regeln und dann die Regel.
- Wähle auf Aktionskarte 1 Sendung beim Zusteller erstellen und klicke auf das Handsymbol in der Kopfzeile. Es muss rot aufleuchten und der Tooltip zu Workflow bei Fehler dieser Aktion abbrechen wechseln. Andernfalls versucht die nächste Aktion möglicherweise, eine nicht vorhandene Nummer zu versenden.
- Wähle auf Aktionskarte 2 Sendungsnummer versenden, öffne das Zahnrad (Aktionseinstellungen) und stelle Ausführen wenn auf Wenn die vorherige erfolgreich war.
- Wähle im nun sichtbaren Feld Aktion verfolgen Aktion 1, angezeigt als
#1: Sendung beim Zusteller erstellen. - Falls der Zusteller etwas Zeit zum Erzeugen der Nummer braucht, stelle im selben Fenster Vor Ausführung warten beispielsweise auf 5 Minuten. Höchstens 1 Stunde.
- Schließe das Menü. Zusammenfassungsmarkierungen im Kartenkopf zeigen nun die Wartezeit sowie Bei Erfolg (oder Bei Fehler).
- Klicke auf Änderungen speichern und bestätige im Fenster 2FA-Verifizierung erforderlich. Bei Erfolg erscheint Regel aktualisiert!.
- In der Regelliste erscheint neben der Regel ein Uhrsymbol mit dem Tooltip Wartet höchstens {time} – darunterliegende Regeln starten erst, wenn diese abgeschlossen ist. Das ist ein Höchstwert, keine Messung.
- Teste den Ablauf, indem du das Ereignis auslöst und das Protokoll prüfst. Während der Pause lautet das Ergebnis
WAITING; nach dem Fortsetzen erscheint das Endergebnis.
Immer über die Warteschlange, nie sofort
Ein Ereignis startet die Regel nicht unmittelbar. Es wird in eine Warteschlange gestellt, von dort aufgenommen und anschließend ausgeführt. Die Verzögerung ist meist gering, aber nicht null. Plane daher keine Abläufe unter der Annahme einer sofortigen Ausführung.
Das Ereignis wird erst nach dem Speichern der Änderung in der Datenbank gesendet. Eine Regel sieht somit nie Daten, die letztendlich nicht gespeichert wurden.
Jeweils nur ein Objekt
Regeln sperren das Objekt, nicht die Regel. Zwei Regeln für dieselbe Bestellung laufen nicht parallel; die zweite wartet.
Scheitert das Warten, erscheint im Verlauf ein Eintrag übersprungen mit einer Erklärung. Das ist kein Regelfehler.
Aktionen laufen der Reihe nach
Die Aktionen werden in der festgelegten Reihenfolge ausgeführt. Scheitert eine Aktion:
- Standardmäßig läuft die Regel weiter; die fehlgeschlagene Aktion wird protokolliert.
- Ist bei der Aktion Bei Fehler abbrechen eingeschaltet, wird die Regel angehalten.
Das ist bei voneinander abhängigen Aktionen entscheidend. Bei Sendung erstellen gefolgt von Sendungsnummer versenden sollte der Abbruch bei Fehler aktiviert sein. Andernfalls versucht die zweite Aktion, eine nicht vorhandene Nummer zu versenden.
Bedingte Aktionen
Jede Aktion kann immer, bei Erfolg der vorherigen oder bei Fehler der vorherigen ausgeführt werden. Die letzte Möglichkeit dient als Reaktion auf einen Fehler – zum Beispiel mit einer Benachrichtigung, wenn der Zusteller ablehnt.
Wiederholungen
Vorübergehende Fehler – etwa eine kurzzeitige Nichtverfügbarkeit des Marketplace oder eine überlastete Datenbank – werden automatisch mehrfach wiederholt. Reagiere nicht auf den ersten roten Eintrag, sondern prüfe, ob ein späterer Versuch erfolgreich war.
Dauerhafte Fehler, zum Beispiel eine fehlende Konfiguration, werden nicht wiederholt.
Warten
Die Aktion Warten (oder eine bei einer Aktion festgelegte Verzögerung) hält die Regel bis zu 60 Minuten an. Die Regel wird im Status wartet gespeichert und später fortgesetzt.
Beachte zwei Dinge:
- Nach der Wartezeit werden die Bedingungen erneut geprüft. Hat sich die Situation geändert, wird die Regel möglicherweise nicht fortgesetzt – das ist beabsichtigt.
- Bereits ausgeführte Aktionen werden nach dem Fortsetzen nicht wiederholt.
Eine wartende Regel hat in der Liste ein Uhrsymbol mit der maximalen Wartezeit. Es handelt sich um einen Höchstwert, nicht um eine Messung.
Begrenzung der Regelkette
Eine Regel kann eine weitere auslösen (Eigene Ereignisse – manuell ausgelöste Schaltflächen). Damit kein Kreislauf entsteht, gilt eine feste maximale Kettentiefe. Wird sie überschritten, wird das Ereignis verworfen und das System erstellt eine Meldung zum Regelkreis (Woher Meldungen kommen und wie sie sich automatisch schließen).
Zwei Regeln, die gegenseitig fortlaufend den Status ändern, werden sich nie stabilisieren. Die Begrenzung hält sie zwar an, behebt das Problem aber nicht. Entwirf Ketten daher in nur eine Richtung.
Die Engine lässt sich vollständig ausschalten
Ein globaler Schalter kann den gesamten Mechanismus deaktivieren. Ist die Engine ausgeschaltet, werden automatische Regeln einfach nicht ausgeführt – ohne Meldung. Beim manuellen Betätigen einer Schaltfläche erscheint hingegen ein deutlicher Fehler.
Wenn plötzlich keine einzige Regel mehr funktioniert und du nichts geändert hast, frage die für die Bereitstellung zuständige Person nach diesem Schalter.
Möchtest du NOXTI mit deinen Bestellungen kennenlernen? Wir zeigen dir NOXTI mit deinen Vertriebskanälen und deinem Lager.
Präsentation vereinbaren