- Versionshinweise
- Erste Schritte
- Einstellung und Konfiguration (Setup and Configuration)
- Automationsprojekte
- Über die Veröffentlichung von Automatisierungsprojekten
- Entwerfen von Automatisierungen
- Verwalten von Aktivitätspaketen
- Konfigurieren von Aktivitätsprojekteinstellungen
- Signieren von Paketen
- Governance
- Importieren von Entitäten
- Verknüpfen eines Projekts mit einer Idee im Automation Hub
- Verwenden des Data Managers
- Abhängigkeiten
- Workflow-Typen
- Kontrollfluss
- Dateivergleich
- Beste Praktiken für die Automatisierung (Automation Best Practices)
- Integration der Quellenkontrolle
- Informationen zur Versionskontrolle
- Verwalten von Projekten mit TFS
- Verwalten von Projekten mit SVN
- Workflow Diff
- Debugging
- Protokollierung
- 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-NMG-017 – Der Klassenname stimmt mit dem Standard-Namespace überein
- ST-DBP-002 – Hohe Anzahl von Argumenten
- ST-DBP-003 – Leerer Catch-Block
- ST-DBP-007 – Mehrere Flussdiagrammebenen
- ST-DPB-010 – Mehrere Instanzen von [Workflow] oder [Testfall]
- ST-DBP-020 – Nicht definierte Ausgabeeigenschaften
- ST-DBP-021 – Hartcodiertes Timeout
- 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-017 – Ungültiger Parametermodifizierer
- 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
- ST-USG-028 – Aufruf von Dateivorlagen einschränken
- ST-USG-032 – Erforderliche Tags
- ST-USG-034 – Automation Hub-URL
- Variablen
- Argumente
- Importierte Namespaces
- Codierte Automatisierungen
- Einleitung
- Registrieren von benutzerdefinierten Diensten
- „Vor“- und „Nach“-Kontexte
- Generieren von Code
- Generieren eines codierten Testfalls aus manuellen Testfällen
- Integrieren von OpenAI in codierte Workflows
- Beantragen eines Kredits bei der UiBank
- Warteschlangengenerierung mit codierten Workflows und Orchestrator-APIs
- Verwenden importierter Bibliotheksprojekte in codierten Automatisierungen
- Verwenden der zweistufigen Authentifizierung in codierten Automatisierungen
- Triggerbasierte Attended-Automatisierung
- Aufzeichnung
- UI-Elemente
- Selektoren
- Objekt-Repository
- Data-Scraping
- Bild- und Textautomatisierung
- Automatisierung von Citrix-Technologien
- RDP-Automatisierung
- VMware Horizon-Automatisierung
- Salesforce-Automatisierung
- SAP-Automation
- macOS UI-Automatisierung
- Das Tool ScreenScrapeJavaSupport
- Das WebDriver-Protokoll
- Erweiterungen
- Über Erweiterungen
- SetupExtensions-Tool
- „UiPathRemoteRuntime.exe“ wird nicht in der Remotesitzung ausgeführt.
- UiPath Remote Runtime blockiert das Schließen der Citrix-Sitzung
- UiPath Remote Runtime verursacht Speicherverlust
- Versionen von UiPath.UIAutomation.Activities-Paket und UiPath Remote Runtime stimmen nicht überein
- Die erforderliche UiPath-Erweiterung ist auf der Remotemaschine nicht installiert
- Einstellungen für die Bildschirmauflösung
- Gruppenrichtlinien
- Kommunikation mit Browser nicht möglich
- Die Chrome-Erweiterung wird automatisch entfernt
- Möglicherweise ist die Erweiterung beschädigt
- Überprüfen Sie, ob die Erweiterung für Chrome installiert und aktiviert ist
- Überprüfen Sie, ob ChromeNativeMessaging.exe ausgeführt wird
- Überprüfen der korrekten Definition der ComSpec-Variablen
- Aktivieren Sie den Zugriff auf Datei-URLs und den Inkognito-Modus
- Mehrere Browser-Profile
- Group Policy conflict
- Spezifische bekannte Probleme für MV3-Erweiterungen
- Liste der Erweiterungen für Chrome
- Chrome-Erweiterung für Mac
- Gruppenrichtlinien
- Kommunikation mit Browser nicht möglich
- Die Edge-Erweiterung wird automatisch entfernt
- Möglicherweise ist die Erweiterung beschädigt
- Überprüfen, ob die Erweiterung für Microsoft Edge installiert und aktiviert ist
- Überprüfen Sie, ob ChromeNativeMessaging.exe ausgeführt wird
- Überprüfen der korrekten Definition der ComSpec-Variablen
- Aktivieren des Zugriffs auf Datei-URLs und den InPrivate-Modus
- Mehrere Browser-Profile
- Group Policy conflict
- Spezifische bekannte Probleme für MV3-Erweiterungen
- Liste der Erweiterungen für Edge
- Erweiterung für Safari
- Erweiterung für VMware Horizon
- Erweiterung für Amazon WorkSpaces
- SAP Solution Manager-Plugin
- Excel-Add-in
- Studio Testing
- Fehlersuche und ‑behebung
- Informationen zur Fehlerbehebung
- Fehler bei der Assembly-Kompilierung
- Microsoft App-V – Unterstützung und Einschränkungen
- Fehlerbehebung bei Internet Explorer x64
- Probleme in Microsoft Office
- Erkennen von UI-Elementen in PDF mit Zugriffsoptionen.
- Reparieren der Active Accessibility-Unterstützung
- Die Validierung großer Windows-Legacy-Projekte dauert länger als erwartet

Studio-Benutzerhandbuch
Zustandsautomaten
linkEine State Machine ist eine Art von Automatisierung, die eine begrenzte Anzahl von Zuständen in ihrer Ausführung benutzt. Sie kann in einen Zustand gehen, wenn sie durch eine Aktivität ausgelöst wurde, und sie beendet diesen Zustand, wenn eine andere Aktivität ausgelöst wird.
Ein weiterer wichtiger Aspekt von State Machines sind Übergänge, da sie auch Bedingungen hinzufügen können, die den Wechsel von einem Zustand in einen anderen ermöglichen. Diese sind durch Pfeile oder Verzweigungen zwischen den Zuständen dargestellt.
Es gibt zwei Aktivitäten, die für State Machines spezifisch sind, nämlich Status (State) und Endstatus (Final State) unter Workflow > State Machine.
Die Aktivität Status (State) enthält drei Abschnitte: Eintritt (Entry), Beenden (Exit) und Transition(s). Endzustand (Final State) hingegen enthält nur einen Abschnitt – Eintritt (Entry). Beide Aktivitäten können durch Doppelklick erweitert werden, um weitere Informationen anzuzeigen und sie zu bearbeiten.
Die Abschnitte Eintritt (Entry) und Beenden (Exit) ermöglichen das Hinzufügen von Eingabe- und Beendigungs-Triggern für den ausgewählten Status, während der Abschnitt Übergang/Übergänge (Transition(s)) alle Übergänge anzeigt, die mit dem ausgewählten Status verknüpft sind.
Übergänge werden erweitert, wenn Sie auf diese doppelklicken, genauso wie die Aktivität Status (State). Sie beinhalten drei Abschnitte, Trigger (Trigger), Bedingung (Condition) und Aktion (Action), die es Ihnen ermöglichen, einen Trigger für den nächsten Zustand oder eine Bedingung hinzuzufügen, unter welcher die Aktivität oder Sequence ausgeführt wird.
Beispiel der Verwendung einer State Machine
linkAls Beispiel für die Verwendung einer State Machine verwenden wir das Ratespiel aus dem vorherigen Kapitel. Der einzige Unterschied ist, dass wir versuchen werden, eine Zahl zwischen 1 und 100 zu erraten.
- Erstellen Sie einen leeren Prozess und wählen Sie auf der Registerkarte Design in Gruppe Datei (File) die Option Neue > State Machine (New > State Machine) aus. Das Fenster Neue State Machine (New State Machine) wird angezeigt.Hinweis: Sie können auch eine State Machine-Aktivität im Panel Designer (Designer) hinzufügen, um eine State Machine-Automatisierung zu erstellen.
- Geben Sie in das Feld Name (Name) einen Namen für die Automation ein, z. B. „Erste State Machine (First State Machine)“, und lassen Sie den standardmäßigen Projektspeicherplatz stehen oder fügen Sie einen Unterordner hinzu. Klicken Sie auf Erstellen (Create). Das Designer-Panel wird entsprechend aktualisiert.
- Erstellen Sie zwei Integer-Variablen,
InitialGuess
undRandomNumber
. Die erste Variable speichert Ihre Schätzung, während die zweite die Zufallszahl speichert. - Fügen Sie eine Status (State)-Aktivität in das Panel Designer (Designer) ein und verbinden Sie sie mit dem Knoten Start. Das ist der ursprüngliche Zustand, der verwendet wird, um eine Zufallszahl zu generieren.
- Doppelklicken Sie auf Aktivität. Die Status (State)-Aktivität wird erweitert im Panel Designer (Designer) angezeigt.
- Geben Sie „Initializing Random Number“ in das Feld AnzeigeName (DisplayName) im Panel Eigenschaften (Properties) ein. Dies ermöglicht Ihnen, Zustände auseinanderzuhalten.
- Fügen Sie eine Zuweisen (Assign)-Aktivität in den Abschnitt Eintritt (Entry) ein.
- Fügen Sie die Variable
RandomNumber
in das Feld In ein. - Geben Sie
new Random().Next(1,100)
im Feld Wert ein. Dieser Ausdruck generiert eine Zufallszahl. - Kehren Sie zur Hauptprojektansicht zurück und fügen Sie eine neue Status (State)-Aktivität hinzu.
- Verbinden Sie sie mit der zuvor hinzugefügten Aktivität.
- Doppelklicken Sie auf die zuletzt hinzugefügte Status (State)-Aktivität. Diese Aktivität wird erweitert im Panel Designer (Designer) angezeigt.
- Geben Sie „Zufallszahl erraten“ in das Feld AnzeigeName (DisplayName) im Panel Eigenschaften (Properties) ein. Dieser Zustand wird verwendet, um den Benutzer aufzufordern, eine Zahl zu erraten.
- Fügen Sie eine Eingabedialog (Input Dialog)-Aktivität im Abschnitt Eintritt (Entry) hinzu.
- Wählen Sie Eingabedialog (Input Dialog) aus und fügen Sie im Panel Eigenschaften (Properties) ein geeignetes Beschriftung (Label) und einen Titel (Title) hinzu, um den Benutzer aufzufordern, eine Zahl zwischen 1 und 100 zu erraten.
- Fügen Sie die Variable
InitialGuess
im Feld Ergebnis (Result) hinzu. Diese Variable speichert die Schätzungen des Benutzers. - Kehren Sie zur Hauptprojektansicht zurück und erstellen Sie einen Übergang, der vom Zustand „Guess Number“ auf sich selbst zeigt.
- Doppelklicken Sie auf den Übergang. Der Übergang wird erweitert im Panel Designer (Designer) angezeigt.
- Geben Sie in das Feld AnzeigeName (DisplayName) im Panel Eigenschaften (Properties) „Versuchen Sie kleiner“ ein. Diese Nachricht wird auf dem Pfeil angezeigt. So können Sie leichter durch Ihre Automatisierung gehen.
- Geben Sie im Abschnitt Bedingung
InitialGuess
>RandomNumber
ein. Dadurch wird überprüft, ob die Schätzung größer als die Zufallszahl ist. - Fügen Sie eine Nachrichtenbox (Message box)-Aktivität im Abschnitt Aktion (Action) hinzu.
- Geben Sie in das Feld Text (Text) z. B. "Ihre Schätzung ist zu groß. Geben Sie eine kleinere Zahl ein." ein. Diese Nachricht wird angezeigt, wenn die Schätzung des Benutzers größer ist als die Zufallszahl.
- Kehren Sie zur Hauptprojektansicht zurück und erstellen Sie einen neuen Übergang, der vom Status Nummer erraten (Guess Number) auf sich selbst zeigt.
- Doppelklicken Sie auf den Übergang. Der Übergang wird erweitert im Panel Designer (Designer) angezeigt.
- Geben Sie „Versuchen Sie größer“ in das Feld AnzeigeName (DisplayName) im Panel Eigenschaften (Properties) ein. Diese Nachricht wird auf dem Pfeil angezeigt und ermöglicht es Ihnen, leichter durch Ihre Automatisierung zu gehen.
- Geben Sie im Abschnitt Bedingung
InitialGuess
<RandomNumber
ein. Dadurch wird überprüft, ob die Schätzung kleiner als die Zufallszahl ist. - Fügen Sie eine Nachrichtenbox (Message box)-Aktivität im Abschnitt Aktion (Action) hinzu.
- Geben Sie im Feld Text (Text) z. B. "Ihre Schätzung ist zu klein. Geben Sie eine größere Zahl ein." ein. Diese Nachricht wird angezeigt, wenn die Schätzung des Benutzers kleiner als die Zufallszahl ist.
- Kehren Sie zur Hauptprojekt-Ansicht zurück und fügen Sie die Aktivität Endzustand (Final State) zum Designer (Designer)-Panel hinzu.
- Verbinden Sie einen Übergang von der Aktivität Zahl erraten(Guess Number) mit der Aktivität Endzustand (Final State).
- Geben Sie „Richtige Schätzung“ im Panel Eigenschaften (Properties) in das Feld AnzeigeName (DisplayName) ein.
- Geben Sie im Feld Bedingung
InitialGuess
=RandomNumber
ein. Das ist die Bedingung, mit der diese Automatisierung in den Endzustand und das Ende übergeht. - Doppelklicken Sie auf die Aktivität Endzustand (Final State). Sie wird erweitert im Panel Designer (Designer) angezeigt.
- Fügen Sie eine Nachrichtenbox (Message box)-Aktivität im Abschnitt Eintritt (Entry) hinzu.
- Geben Sie im Feld Text etwa Folgendes ein: „Herzlichen Glückwunsch. Sie haben richtig geraten! Die Zahl war „ +
RandomNumber.ToString
+ “.“ Dies ist die letzte Meldung, die angezeigt wird, wenn der Benutzer die Zahl richtig errät.Das finale Projekt sollte wie auf dem folgenden Screenshot aussehen.
- Drücken Sie F5. Die Automatisierung wird korrekt ausgeführt.