- Versionshinweise
- Erste Schritte
- Einstellung und Konfiguration (Setup and Configuration)
- Automationsprojekte
- Abhängigkeiten
- Workflow-Typen
- Sequences
- Flussdiagramme
- Zustandsautomaten
- Global Exception Handler
- Dateivergleich
- Beste Praktiken für die Automatisierung (Automation Best Practices)
- Integration der Quellenkontrolle
- Debugging
- Das Diagnose-Tool
- Workflow-Analyse
- Über die Workflow-Analyse
- ST-NMG-001 – Namenskonvention für Variablen
- ST-NMG-002 – Namenskonvention für Argumente
- ST-NMG-004 – Duplizierung des Anzeigenamens
- ST-NMG-005 – Variable überschreibt Variable
- ST-NMG-006 – Variable überschreibt Argument
- ST-NMG-008 – Variablenlänge überschritten
- ST-NMG-009: Datentabellenvariablen mit Präfix versehen
- ST-NMG-011 – Datentabellenargumente mit Präfix versehen
- ST-NMG-012 – Standardwerte für Argumente
- ST-NMG-016 – Argumentlänge überschritten
- ST-DBP-002 – Hohe Anzahl von Argumenten
- ST-DBP-003 – Leerer Catch-Block
- ST-DBP-007 – Mehrere Flussdiagrammebenen
- ST-DBP-020 – Nicht definierte Ausgabeeigenschaften
- ST-DBP-023 – Leerer Workflow
- ST-DBP-024 – Prüfung der Persistenzaktivität
- ST-DBP-025 – Voraussetzung für Variablenserialisierung
- ST-DBP-026 – Verwendung der Verzögerungsaktivität
- ST-DBP-027 – Bewährte Methode für Persistenz
- ST-DBP-028 – Voraussetzung für Argumentenserialisierung
- ST-USG-005 – Hartcodierte Aktivitätsargumente
- ST-USG-009 – Nicht verwendete Variablen
- ST-USG-010 – Nicht verwendete Abhängigkeiten
- ST-USG-014 – Paketbeschränkungen
- ST-USG-020 – Minimale Protokollmeldungen
- ST-USG-024 – Nicht verwendet, gespeichert für später
- ST-USG-025 – Missbrauch gespeicherter Werte
- ST-USG-026 – Aktivitätseinschränkungen
- ST-USG-027 – Erforderliche Pakete
- Variablen
- Argumente
- Importierte Namespaces
- Kontrollfluss
- Objekt-Repository
- Protokollierung
- Das ScaleCoordinates-Migrationstool
- Das Tool ScreenScrapeJavaSupport
- StudioPro
- Erweiterungen
- Fehlersuche und ‑behebung
- Internet Explorer x64
- Microsoft Office Interop-Probleme
- Erkennen von UI-Elementen in PDF mit Zugriffsoptionen.
- Erkennen von UI-Elementen nach Windows-Aktualisierungen.
- JxBrowser-Anwendungen
- Überwachung der Benutzerereignisse (User Events Monitoring)
- Java in App-V
- Microsoft App-V – Unterstützung und Einschränkungen
- Citrix-Fehlerbehebung
Die globale Ausnahmebearbeitung (Global Exception Handler) ist ein Workflow, mit dem Sie das Verhalten des Projekts beim Antreffen eines Ausführungsfehlers bestimmen können. Pro Automationsprojekt kann nur eine globale Ausnahmebearbeitung (Global Exception Handler) angegeben werden.
Die globale Ausnahmebearbeitung (Global Exception Handler) steht nur für Prozesse und nicht für Bibliotheksprojekte zur Verfügung.
The Global Exception Handler has two arguments, that should not be removed.
Das erste Argument ist errorInfo mit der Richtung Ein. Darin sind Informationen über den Fehler und den fehlgeschlagenen Workflow gespeichert. Die zu protokollierende Fehlerstufe kann in der Aktivität Meldungen protokollieren (Log Message) festgelegt werden.
Mit der Eigenschaft ActivityInfo für errorInfo können Sie den Namen der Aktivität abrufen, die die Ausnahme ausgeworfen hat, und diese im Panel Ausgabe (Output) anzeigen.
Das zweite Argument ist result mit der Richtung Aus. Darin wird das Verhalten des Prozesses beim Antreffen des nächsten Fehlers festgelegt. Folgende Werte können dem Argument result zugeordnet werden:
-
Fortfahren (Continue) - Die Ausnahme wird erneut ausgegeben.
-
Ignorieren (Ignore): Die Ausnahme wird ignoriert und Ausführung ab der nächsten Aktivität fortgesetzt.
-
Wiederholen (Retry) - Die Aktivität, welche die Ausnahme generiert hat, wird wiederholt. Wählen Sie die Methode
RetryCount, damiterrorInfozählt, wie oft erneut versucht wird, die Aktivität auszuführen. -
Abbrechen (Abort) - Die Ausführung stoppt nach Ausführung der aktuellen Globalen Ausnahmebearbeitung (Global Exception Handler).
Hinweis:Jeder Workflow kann in Studio als Global Exception Handler gekennzeichnet werden, mit Ausnahme von Bibliotheksprojekten und
Main.xaml.
Bearbeitungsfehler bei der Fehlersuche
Wenn beim Debuggen eine Ausnahme erkannt wird, wird die fehlerhafte Aktivität hervorgehoben, die Ausführung wird angehalten, und der Typ und die Details der Ausnahme werden in den Panels Lokal und Aufrufliste angegeben.
Debugging actions like Continue, Stop, Retry, Ignore, Restart and Slow Step are available in the ribbon. Ignore is used for continuing the execution from the next activity.
Mit der Schaltfläche Wiederholen wird erneut versucht, die aktuelle Aktivität auszuführen, ohne dass der globale Ausnahmehandler eingreift. Mit der Aktion Fortfahren wird der globale Ausnahmehandler ausgeführt. Dabei werden die zuvor gewählten Werte für das result-Argument berücksichtigt, entweder Fortfahren, Ignorieren, Wiederholen oder Abbrechen.
Wenn Sie den Global Exception Handler mit einem Projekt verwenden, das eine Try Catch enthält, stellen Sie sicher, dass Sie Aktivitäten in einer Sequence im Try-Container gruppieren. Andernfalls wird der Global Exception Handler nicht ausgeführt.
Bei verschachtelten Aktivitäten wird die Global Exception Handler für jede Aktivität im Aufrufstapel ausgeführt. Sie wird jedoch nicht für Aktivitäten ausgeführt, die direkt in einem Abfangen versuchen (Try Catch) eingeschlossen sind, sofern diese nicht in einer Aktivität enthalten sind.
Beispiel für die Verwendung der globalen Ausnahmebearbeitung
Das folgende Beispiel veranschaulicht das Projektverhalten bei einer Ausnahme während der Ausführung.
Das Automationsprojekt ist darauf eingestellt, in einem leeren und gespeicherten Notepad-Dokument zu klicken, einen Text einzugeben und die Anwendung zu schließen, jedoch nicht, ohne zum Speichern die Schaltfläche Speichern zu betätigen.
Um den Versuch zu unternehmen, das Verhalten eines Workflows im Falle eines Fehlers zu überprüfen, wiederholt die globale Fehlerbearbeitung (Global Exception Handler) die Aktivität drei Mal und bricht dann mit einer Fehlermeldung ab.
Erstellen des Workflows
-
Create a Blank Process by following the steps in the Creating a Basic Process page.
-
Öffnen Sie Notepad und speichern Sie ein Dokument auf Ihrem Computer.
-
From the Activities panel, drag a Type Into activity to the Designer panel. The activity is automatically added to a Sequence.
-
Klicken Sie in der Aktivität Eingeben (Type Into) auf Auf dem Bildschirm anzeigen (Indicate on Screen). Studio minimiert das Notepad-Fenster und fordert Sie auf, in diesem zu klicken, um den Selektor zu erstellen. Geben Sie den gewünschten Text in Anführungszeichen in das Textfeld ein.
-
From the Activities panel, add a Send Hotkey activity to the workflow. Indicate the Notepad window, and select Ctrl from the activity, type in s in the Key field. This saves the Notepad document after the text was typed in.
-
From the Activities panel, add a Close Application activity to the workflow. Indicate the Notepad window using Indicate on screen. The resulted workflow should look like this:
Hinzufügen einer globalen Ausnahmebearbeitung
-
Wählen Sie auf der Registerkarte Design des Menübands die Option Neu > Globaler Handler aus. Das Fenster Neuer globaler Handler wird geöffnet. Geben Sie einen Namen für den Handler an, und speichern Sie ihn im Projektpfad. Klicken Sie auf Erstellen. Ein globaler Ausnahmehandler wird dem Automatisierungsprojekt hinzugefügt.
-
Erstellen Sie auf der Registerkarte Variablen (Variables) eine
Int32-Variable mit dem NamenretryCount. Legen Sie deren Bereich auf den gesamten Global Exception Handler fest und lassen Sie das Wertfeld Standard (Default) leer. Die Variable speichert die Anzahl der erneuten Versuche und erhöht die Anzahl beim Antreffen eines Fehler jedes Mal um1. -
Erstellen Sie eine String-Variable mit dem Namen
failedActivityund legen Sie deren Bereich auf den gesamten Workflow fest. Diese Variablen speichern den Namen der fehlgeschlagenen Aktivität und vermerken diese im Panel Ausgabe (Output). -
From the Activities panel, add an Assign activity below the Log Error in the Global Handler sequence. Add the
retryCountto the activity and assign it theerrorInfo.RetryCountexpression, which counts the number of times the exception is thrown. -
Fügen Sie eine weitere Zuordnen (Assign) Aktivität hinzu, in der Sie den Ausdruck
errorInfo.ActivityInfo.Namezur VariablenfailedActivityhinzufügen. An diesem Punkt sollte der Workflow folgendermaßen aussehen: -
Add an If activity to the workflow. Set the Condition to
retryCount < 3to limit the number of retries to 3. -
Ordnen Sie die
ErrorAction.Retryim Aktivitätsteil Zuordnen (Assign) der Kategorie Dann (Then) der Variablenresultzu, damit die globale Fehlerbearbeitung (Global Exception Handler) einen erneuten Versuch unternimmt, die Aktivität auszuführen, welche zu der Ausnahme geführt hat. -
Weisen Sie die
ErrorAction.Abortin der Kategorie Andernfalls (Else) zuresultzu, damit die globale Fehlerbearbeitung (Global Exception Handler) abgebrochen wird, wenn die Bedingung erfüllt ist. Die Wenn (If)-Aktivität sollte folgendermaßen aussehen:
Wenn die globale Ausnahmebearbeitung (Global Exception Handler) eine Ausnahme antrifft, protokolliert sie den Namen der fehlgeschlagenen Aktivität und versucht drei Mal, die Aktivität zu starten. Stößt sie dabei jedes Mal auf dieselbe Ausnahme, wird die Ausführung nach 3 Versuchen auf der Stufe der Aktivität abgebrochen, welche die Ausnahme verursacht hat.
Wird bei einem der Wiederholungsversuche keine Ausnahme angetroffen, wird die Ausführung des Workflows fortgesetzt und die globale Ausnahmebearbeitung (Global Exception Handler) setzt nicht ein.