Bei dem im Workflow-Designer als Fehler behandeln verfügbaren Fehlerbehandlungsblock handelt es sich um ein Steuerelement, mit dem auftretende Fehler behandelt werden können.
In der Programmierung entspricht dieses Element einem TRY-CATCH-Statement.
INHALTSVERZEICHNIS |
Grundlagen
Jede Standard-Aktion in formcycle kann Fehler werfen. Endet eine Verarbeitungskette in einem unbehandelten Fehler, wird der Workflow an dieser Stelle abgebrochen, der Vorgang als fehlerhaft markiert und es werden keine weiteren Verabeitungsketten mehr ausgeführt. Siehe auch die Hilfeseite zur Fehlerbehandlung.
Um dies zu verhindern, können Fehler über Fehlerbehandlungsblöcke abgefangen werden. Für den Fall, dass ein Fehler eingetreten ist, können weitere im Fehlerbehandlungsblock definierte Aktionen ausgeführt werden.
Eine Alternative zum Behandeln von Fehlern mittels Fehlerbehandlungsblöcken ist die Verwendung von Ereignissen vom Typ Workflow-Fehler.
Fehlerbehandlungsblock
Mittels Fehlerbehandlungsblock kann ein Fehler abgefangen werden. Wird ein Fehler mittels Fehlerbehandlungsblock behandelt, wird die Verarbeitungskette insgesamt als ordnungsgemäß abgearbeitet betrachtet, endet also nicht in einem Fehler.
Der Fehlerbehandlungsblock ist wie folgt aufgebaut:
- Auf der linken Seite befinden sich die Aktionen, welche normalerweise ausgeführt werden sollen. Sobald bei einer der Aktionen ein Fehler aufritt, wird die weitere Verarbeitung auf der linken Seite beendet und es werden stattdessen die auf der rechten Seite konfigurierten Aktionen ausgeführt.
- Auf der rechten Seite befinden sich die Aktionen, welche beim Auftreten eines Fehlers ausgeführt werden sollen.
Nachdem alle Aktionen im Fehlerbehandlungsblock ausgeführt worden sind beziehungsweise im Falle eines Fehlers die auf der rechten Seite konfigurierte Fehlerbehandlung durchlaufen wurde, wird die Verarbeitung am unteren linken Knoten fortgesetzt.
Durch die Verwendung von Bedingungsblöcken innerhalb der Fehlerbehandlung eines Fehlerbehandlungsblocks kann geprüft werden, welche Art von Fehler aufgetreten ist. Dadurch ist es möglich, verschiedene Fehler in einem einzigen Fehlerbehandlungsblocks unterschiedlich zu behandeln.
Sollte in einer Aktion auf der rechten Seite des Fehlerbehandlungsblock ein unbehandelter Fehler auftreten, endet der gesamte Fehlerbehandlungsblock in einem Fehler und der Workflow wird abgebrochen. Fehlerbehandlungsblöcke können zudem verschachtelt werden, wodurch bei der Behandlung eines Fehlers auftretende andere Fehler abgefangen und ihrerseits behandelt werden können.
Platzhalter
Sowohl im Fehlerbehandlungsblock als auch im Workflow-Fehler-Ereignis kann auf den aufgetretenen Fehler mittels Platzhaltern zugegriffen werden:
- [%$LAST_ERROR%]
- [%$LAST_ERROR_CODE%]
- [%$LAST_ERROR_MESSAGE%]
- [%$LAST_ERROR_NODE_NAME%]
- [%$LAST_ERROR_NODE_TYPE%]
Die Inhalte dieser Platzhalter unterscheiden sich zum Teil je nach Aktion und können in der Dokumentation der jeweiligen Aktion gefunden werden. Durch Auswertung der Werte dieser Platzhaltern ist es zum Beispiel möglich, mittels Bedingungen abhängig vom Fehlertyp unterschiedlich zu reagieren.
War dieser Artikel hilfreich?
Das ist großartig!
Vielen Dank für das Feedback
Leider konnten wir nicht helfen
Vielen Dank für das Feedback
Feedback gesendet
Wir wissen Ihre Bemühungen zu schätzen und werden versuchen, den Artikel zu korrigieren