Unter den zahlreichen Verbesserungen in SF 1.0.6 findet sich auch die verbesserte Fehlerbehandlung. War es in der Vergangenheit noch so, dass alle Fehler zur Laufzeit eines K2 Smartforms direkt in einem Popup dargestellt wurden, kann man nun mit einer Regel ggf. Fehler abfangen und zum Beispiel nach Abhängigkeit des Fehlertyps mit einer eigenen, benutzerfreundlichen Fehlermeldung arbeiten oder auf eine passende Landingpage weiterleiten.
Fehler abfangen
Das funktioniert pragmatisch auf View- und Formularebene und zwar über sog. View-Methoden. Jede Ansicht und jedes Formular haben ab sofort entsprechende Methoden im Rules Wizard. Somit ist es möglich ein ganzes Set an Regeln auszuführen, falls auf der Ansicht oder dem Formular ein Fehler auftritt.
Welche Informationen gibt es über den Fehler?
Die Details zum Fehler findet man im Kontext Browser unter den System Values. Es wird unterschieden zwischen
- Error Message
- Error Details
- Error Type
Basierend auf diesen Informationen kann man nun eine eigene Fehlerbehandlung implementieren, zum Beispiel anhand des Error Type
Und entsprechend dann darauf reagieren
Try-Catch-Funktion
Zusätzlich zu den View- und Form Methoden gibt es auch eine neue Condition (“error occured”) und eine neue Action (“stop rule execution”) in dem Rules Designer. Kombiniert man beide, kann man eine Art “Try-Catch” Funktion implementieren.
Im folgenden Beispiel wird eine SmartObject Methode ausgeführt welche intern einen Webservice nutzt. Antwortet der Service nicht, kann man dies mit einer eigenen Meldung dem Anwender verdeutlichen 🙂
In Verbindung mit dem Multilingual Control kann man die Fehlermeldungen bzw. Seiten übrigens auch mehrsprachig gestalten!
Weitere Informationen zu dem Thema Error Handling gibt es wie immer auf der K2 Website! (Knowledge Base)