Hallo,
kann mir jemand erklären wie und wann man am besten Exception verwendet.
Weil Exceptions kann ich ja an Action und Condition verwenden.
Danke
MacToolz
Exception ...
Moderator: Martin
Re: Exception ...
Hi,
Exception verwendest du immer dann, wenn ein Flow durch einen Fehler abgebrochen wird, zum Beispiel wenn du einen Netzwerkzugriff machen willst, aber gerade kein Netzwerk verfügbar ist. In diesem Fall würde der Flow abgebrochen und eine Benachrichtigung über den Fehler angezeigt. Wenn du den Fehler selbst behandeln willst, kannst du von der Action oder Condition, welche den Fehler erzeugt, eine 'Exception'-Verbindung hinzufügen. Der Flow wird über diese Verbindung weiter ausgeführt, wenn ein Fehler auftritt.
Freundliche Grüsse
Martin
Exception verwendest du immer dann, wenn ein Flow durch einen Fehler abgebrochen wird, zum Beispiel wenn du einen Netzwerkzugriff machen willst, aber gerade kein Netzwerk verfügbar ist. In diesem Fall würde der Flow abgebrochen und eine Benachrichtigung über den Fehler angezeigt. Wenn du den Fehler selbst behandeln willst, kannst du von der Action oder Condition, welche den Fehler erzeugt, eine 'Exception'-Verbindung hinzufügen. Der Flow wird über diese Verbindung weiter ausgeführt, wenn ein Fehler auftritt.
Freundliche Grüsse
Martin
Re: Exception ...
Hi,
wird eigentlich eine Exception an den aufrufenden Kontext durchgereicht ...
Gruß
MacToolz
wird eigentlich eine Exception an den aufrufenden Kontext durchgereicht ...
Gruß
MacToolz
Re: Exception ...
Hi,
Was meinst du mit aufrufendem Kontext?
Wenn du eine Exception-Verbindung hinzufügst und der Flow bei einem Fehler über diese Verbindung fortgeführt wird, stehen zusätzlich Variablen exception_message und exception_stacktrace mit den Details des Fehlers zur Verfügung. Du könntest also mit einer Condition die Variablen prüfen und je nach Fehler unterschiedliche Actions ausführen.
Freundliche Grüsse
Martin
Was meinst du mit aufrufendem Kontext?
Wenn du eine Exception-Verbindung hinzufügst und der Flow bei einem Fehler über diese Verbindung fortgeführt wird, stehen zusätzlich Variablen exception_message und exception_stacktrace mit den Details des Fehlers zur Verfügung. Du könntest also mit einer Condition die Variablen prüfen und je nach Fehler unterschiedliche Actions ausführen.
Freundliche Grüsse
Martin
Re: Exception ...
Hi,
ich rufe im Flow A den Flow B auf, somit wäre für mich der aufrufende Kontext der FLOW A.
Ich möchte dann wissen ob die Exception nach oben, sprich von FLOW B nach FLOW A durchgereicht wird.
Verhält sich das dann genauso mit der Option das man "warten muss bis der Flow fertig ausgeführt wurde" und die lokalen Variabel
dann im FLOW A vorhanden sind?
Gruß
MacToolz
ich rufe im Flow A den Flow B auf, somit wäre für mich der aufrufende Kontext der FLOW A.
Ich möchte dann wissen ob die Exception nach oben, sprich von FLOW B nach FLOW A durchgereicht wird.
Verhält sich das dann genauso mit der Option das man "warten muss bis der Flow fertig ausgeführt wurde" und die lokalen Variabel
dann im FLOW A vorhanden sind?
Gruß
MacToolz
Re: Exception ...
Hi,
Die Exception von Flow B wird im Moment nicht automatisch an Flow A übergeben.
Du müsstest im Flow B eine Exception-Verbindung hinzufügen, damit die Variablen exception_message und exception_stacktrace überhaupt verfügbar werden. Danach kannst du im Flow A darauf zugreifen (vorausgesetzt im Flow A ist Variablen an aufrufenden Flow zurückgeben aktiviert).
Freundliche Grüsse
Martin
Die Exception von Flow B wird im Moment nicht automatisch an Flow A übergeben.
Du müsstest im Flow B eine Exception-Verbindung hinzufügen, damit die Variablen exception_message und exception_stacktrace überhaupt verfügbar werden. Danach kannst du im Flow A darauf zugreifen (vorausgesetzt im Flow A ist Variablen an aufrufenden Flow zurückgeben aktiviert).
Freundliche Grüsse
Martin
Re: Exception ...
Hi,
ok dann passt das ja.
Nur die Frage ist wie ich die Exceptions einfange.
Die ExceptionMessage ist ja nur eine String Variabel.
Dann müsste ich ja rein theoretisch immer schauen ob in dem String was drin steht, so nach dem Motto
if len(ExceptionMessage)>0 or (ExceptionMessage != null) or (ExceptionMessage != '' ) then
{
}
Gruß
MacToolz
ok dann passt das ja.
Nur die Frage ist wie ich die Exceptions einfange.
Die ExceptionMessage ist ja nur eine String Variabel.
Dann müsste ich ja rein theoretisch immer schauen ob in dem String was drin steht, so nach dem Motto
if len(ExceptionMessage)>0 or (ExceptionMessage != null) or (ExceptionMessage != '' ) then
{
}
Gruß
MacToolz
Re: Exception ...
Hi
Automagic setzt die Variable nur, wenn auch ein Feher auftritt, ansonsten bleibt die Variable 'null'.
Folgende Prüfung sollte deshalb ausreichen:
-Condition Expression: exception_message != null
--> true/Ja: Fehler
oder in einer Action Script
if (exception_message != null)
{
log("Fehler");
}
Freundliche Grüsse
Martin
Automagic setzt die Variable nur, wenn auch ein Feher auftritt, ansonsten bleibt die Variable 'null'.
Folgende Prüfung sollte deshalb ausreichen:
-Condition Expression: exception_message != null
--> true/Ja: Fehler
oder in einer Action Script
if (exception_message != null)
{
log("Fehler");
}
Freundliche Grüsse
Martin