Ausnahmenbehandlung

Abgeschlossen

Ausnahmen können von praktisch jeder Aktion ausgeführt werden. Aus diesem Grund enthalten die Eigenschaften der meisten Aktionen eine Bei Fehler-Schaltfläche. Diese Schaltfläche ermöglicht den Zugriff auf die Einstellungen für die Ausnahmebehandlung der Aktion.

Ausnahmebehandlung auf Aktionsebene

Im ersten Beispiel haben wir erwähnt, dass auf die Datenbank des Kunden möglicherweise nicht zugegriffen werden kann, wodurch die Aktion, die mit der Datenbank kommuniziert, eine Ausnahme erzeugt.

Um dies zu verhindern, öffnen Sie die Eigenschaften der Aktion und drücken Sie die Schaltfläche Bei Fehler.

Eigenschaften der Aktion „Ausnahmebehandlung in der offenen SQL-Verbindung“

In dieser Ansicht können Sie das Ausnahmebehandlungsverhalten der Aktion konfigurieren, indem Sie entweder voreingestellte Regeln aktivieren oder neue hinzufügen. Diese Regeln werden wirksam, wenn diese bestimmte Aktion fehlschlägt und in der Reihenfolge, in der sie angeordnet sind:

Die ausgefüllte Registerkarte für Eigenschaften der Aktion „Ausnahmebehandlung in der offenen SQL-Verbindung“

Hinweis

Sie können alle benutzerdefinierten Regeln per Drag & Drop verschieben, um sie neu anzuordnen.

Wenn diese Aktion beispielsweise im obigen Fall fehlschlägt, wird sie nach 2 Sekunden noch einmal wiederholt und anschließend ein Subflow ausgeführt, der eine E-Mail sendet, um den Administrator über den Datenbankstatus zu informieren. Darüber hinaus ändert die Aktion den Wert einer Variablen, die die Inaktivität der Datenbank anzeigt.

Standardmäßig wird die Ausnahmebehandlung wirksam, wenn während der Ausführung dieser Aktion eine Ausnahme auftritt. Sie können sie jedoch so konfigurieren, dass die Ausnahmebehandlung nur für einen bestimmten Ausnahmetyp erfolgt. Jede Aktion hat bestimmte Ausnahmetypen, die sie erzeugen kann:

Die ausgefüllte Registerkarte für Eigenschaften der Aktion „Ausnahmebehandlung in der offenen SQL-Verbindung“ mit ausgewählten Ausnahmen

In diesem Beispiel gelten die Regeln für die Ausnahmebehandlung nur, wenn die Ausnahme Verbindung zu Datenquelle kann nicht herstellt werden auftritt.

Ausnahmebehandlung auf Blockebene

Es gibt Fälle, in denen nicht sicher ist, welche Aktion fehlschlagen kann, und es nicht praktikabel ist, auf jede einzelne Aktion dieselben Regeln für die Ausnahmebehandlung anzuwenden.

Stellen Sie sich zum Beispiel einen Flow vor, in dem Power Automate für Desktop mit dem Webportal interagiert. Wenn das Portal oder der Browser während dieser Aufgabe zu irgendeinem Zeitpunkt nicht mehr reagiert, besteht die bevorzugte Aktion darin, den Browser zu schließen, ihn erneut zu starten und die gesamte Webportal-Interaktion von Anfang an neu zu starten. Eine Webportal-Interaktion kann jedoch zehn oder sogar Hunderte von Aktionen umfassen. Daher ist es unpraktisch, jeder Aktion einzeln dieselben Ausnahmebehandlungsregeln zuzuweisen.

Mit der Aktion Bei Blockfehler können Sie einen Satz von Ausnahmebehandlungsregeln auf einen gesamten Aktionsblock anwenden:

Dialogfeld der Eigenschaften der Aktion „Bei Blockfehler“

Aktionen zwischen den Aktionen Bei Blockfehler und Ende sind von den Regeln für die Ausnahmebehandlung des Blocks betroffen:

Der Arbeitsbereich mit einem Beispiel unter Verwendung der Aktion „Bei Blockfehler“

Wenn in diesem Beispiel eine der Aktionen innerhalb des Blocks fehlschlägt, werden die Regeln des Blocks wirksam. Ein Subflow, der den Webbrowser schließt, wird ausgeführt, und der gesamte Block wird wiederholt, wodurch verhindert wird, dass der Flow aufgrund einer nicht reagierenden Webseite oder eines Browsers abstürzt.

Ausnahmebehandlungsprioritäten

Die Reihenfolge, in der die Ausnahmebehandlung angewendet wird, erfolgt von unten nach oben. Dies bedeutet, dass im Falle eines Fehlschlags einer Aktion die einzelnen Regeln für die Ausnahmebehandlung sofort wirksam werden. Wenn dies nicht ausreicht, um den Flow fortzusetzen, wird die Ausnahmebehandlung auf Blockebene wirksam.

Daher werden alle Ausnahmebehandlungsregeln auf Aktionsebene vor den jeweiligen Regeln auf Blockebene ausgeführt.