UiPath Documentation
getting-started
latest
false
Erste Schritte für Entwickleranleitung
  • Einleitung
    • Überblick
    • Umgebung eingerichtet
  • Erste Schritte mit UiPath Agents
  • Erste Schritte mit UiPath Agents mit LangGraph
  • Erstellen eines Low-Code-Agents in Studio Web
  • Hinzufügen von Tools zu Ihrem UiPath Agent
  • Erste Schritte mit UiPath Maestro Flow
    • Einleitung
    • Erstellen Sie den Flow
    • Überprüfen Sie den Flow
    • Testen Sie den Flow
    • Stellen Sie den Flow bereit
    • Führen Sie den Flow aus
Wichtig :
Dieser Inhalt wurde maschinell übersetzt. Es kann 1–2 Wochen dauern, bis die Lokalisierung neu veröffentlichter Inhalte verfügbar ist.

Überprüfen Sie den Flow

Stellen Sie sicher, dass der Preisüberwachungsflow korrekt ohne Fehler oder Warnungen erstellt wurde.

Schritt 3 – Überprüfen des Flusses​

In den folgenden Schritten verwenden wir die UiPath CLI (uip), um unseren Flow zu validieren und einige häufige Warnungen und Fehler zu behandeln, die dabei auftreten würden. In diesem Abschnitt erfahren Sie, wie Sie die CLI verwenden, um die Konfiguration Ihres Flows zu überprüfen und zu validieren. Sie können zum Abschnitt Testen des Flows springen und später zurückgreifen, wenn Sie diesen Ansatz bevorzugen.

3.1 – Bestätigen Sie die Knoten und Verbindungen​

Führen Sie den folgenden Befehl aus, um die Knoten aufzulisten:

uip maestro flow node list PriceWatch/PriceWatch.flow --output table
uip maestro flow node list PriceWatch/PriceWatch.flow --output table

Die Knotenliste sollte genau diese sechs IDs enthalten:

Id              | Type                | Label
----------------|---------------------|-----------------
start           | core.trigger.manual | Manual trigger
fetchRate1      | core.action.http.v2 | Fetch rate
reshapeRate1    | core.action.script  | Reshape rate
belowThreshold1 | core.logic.decision | Below threshold
endAlert1       | core.control.end    | End alert
endNoAction1    | core.control.end    | End no action
Id              | Type                | Label
----------------|---------------------|-----------------
start           | core.trigger.manual | Manual trigger
fetchRate1      | core.action.http.v2 | Fetch rate
reshapeRate1    | core.action.script  | Reshape rate
belowThreshold1 | core.logic.decision | Below threshold
endAlert1       | core.control.end    | End alert
endNoAction1    | core.control.end    | End no action

Führen Sie als Nächstes den folgenden Befehl aus, um die Verbindungen (Edges) zwischen Knoten zu überprüfen:

uip maestro flow edge list PriceWatch/PriceWatch.flow --output table
uip maestro flow edge list PriceWatch/PriceWatch.flow --output table

Die Edge-Liste sollte fünf Edges enthalten und der Entscheidungsknoten muss zweimal als Quelle angezeigt werden, einmal auf seinem true -Port und einmal auf false. Ein Entscheidungsknoten mit einer ausgehenden Edge ist der wichtigste Strukturfehler in diesem Flow. Im nächsten Abschnitt wird erläutert, wie Sie ihn prüfen.

Id                                         | Source                | Target               
-------------------------------------------|-----------------------|----------------------
start-output-fetchRate1-input              | start:output          | fetchRate1:input     
fetchRate1-default-reshapeRate1-input      | fetchRate1:default    | reshapeRate1:input   
reshapeRate1-success-belowThreshold1-input | reshapeRate1:success  | belowThreshold1:input
belowThreshold1-true-endAlert1-input       | belowThreshold1:true  | endAlert1:input      
belowThreshold1-false-endNoAction1-input   | belowThreshold1:false | endNoAction1:input   
Id                                         | Source                | Target               
-------------------------------------------|-----------------------|----------------------
start-output-fetchRate1-input              | start:output          | fetchRate1:input     
fetchRate1-default-reshapeRate1-input      | fetchRate1:default    | reshapeRate1:input   
reshapeRate1-success-belowThreshold1-input | reshapeRate1:success  | belowThreshold1:input
belowThreshold1-true-endAlert1-input       | belowThreshold1:true  | endAlert1:input      
belowThreshold1-false-endNoAction1-input   | belowThreshold1:false | endNoAction1:input   

Wenn sich Ihre IDs unterscheiden, beheben Sie sie jetzt, anstatt die Ausdrücke auf den folgenden Seiten anzupassen. Um die IDs zu ändern, führen Sie die Schritte zum Umbenennen einer Knoten-ID aus.

3.2 – Auf Warnungen und Fehler prüfen​

Der Befehl validation liest die gesamte Datei, validiert sie und es empfiehlt sich, ihn auszuführen, bevor Sie einen Flow bereitstellen, um potenzielle Fehler aufzudecken. Verwenden Sie den folgenden Befehl:

uip maestro flow validate PriceWatch/PriceWatch.flow
uip maestro flow validate PriceWatch/PriceWatch.flow

Vergewissern Sie sich, dass Sie "Status": "Valid" ohne Warnings -Felder sehen (das Feld File enthält den vollständigen, absoluten Pfad der .flow -Datei, je nach Betriebssystem und Benutzername):

{
  "Result": "Success",
  "Code": "FlowValidate",
  "Data": {
    "File": "/home/user/tutorial-maestro-flow-price-watch/PriceWatch/PriceWatch.flow",
    "Status": "Valid"
  }
}
{
  "Result": "Success",
  "Code": "FlowValidate",
  "Data": {
    "File": "/home/user/tutorial-maestro-flow-price-watch/PriceWatch/PriceWatch.flow",
    "Status": "Valid"
  }
}

Wenn Sie kein Warnings sehen, können Sie mit dem nächsten Schritt zum Testen des Flows fortfahren.

Tipp:

Es wird dringend empfohlen, vor dem Ausführen des Flows den Befehl validate auszuführen, um Probleme wie die unten gezeigten zu vermeiden. Sowohl uip maestro flow debug als auch uip maestro flow publish werden erfolgreich mit Warnungen abgeschlossen und schlagen nur fehl, wenn Fehler aufgetreten sind. Wenn Sie CI/CD-Workflows (Continuous Integration/Continuous Deployment) einrichten, müssen Sie uip maestro flow validate vor dem Befehl publish hinzuzufügen, um sicherzustellen, dass kein Paket mit Warnungen veröffentlicht oder bereitgestellt wird.

Häufige Warnungen​

Hier sind zwei gängige Warnungstypen, die Sie im Auge behalten sollten, und deren Behebung:

  1. Ein fehlender triggerNodeId für eine Eingabevariable, was bedeutet, dass sie als globale Variable und nicht als Trigger-Eingabevariable eingerichtet wurde. Globale Variablen können von jedem Knoten gelesen und festgelegt werden und werden beim manuellen Auslösen des Flows nicht als erforderlicher Wert angezeigt.

    - [variables.globals[baseCurrency].triggerNodeId] Input variable "baseCurrency" is
      read via `$vars.start.output.baseCurrency`, but it has no "triggerNodeId". At
      runtime the trigger "start" output will not contain "baseCurrency", so the value
      resolves to null (a downstream node may fault, e.g. "Cannot read property '…' of
      null"). Set "triggerNodeId": "start" on the "baseCurrency" global.
    - [variables.globals[baseCurrency].triggerNodeId] Input variable "baseCurrency" is
      read via `$vars.start.output.baseCurrency`, but it has no "triggerNodeId". At
      runtime the trigger "start" output will not contain "baseCurrency", so the value
      resolves to null (a downstream node may fault, e.g. "Cannot read property '…' of
      null"). Set "triggerNodeId": "start" on the "baseCurrency" global.
    

    Um dieses Problem zu beheben, löschen Sie zuerst die globale Variable baseCurrency und bearbeiten Sie dann den Triggerknoten start , um die Variable baseCurrency auf diesem Knoten hinzuzufügen (siehe Schritt 2.1).

  2. MISSING_OUTPUT_MAPPING – Ein Endknoten, der die Ausgabevariable(n) nicht festlegt und sie mit null -Werten zurückgibt – jedes nachgelagerte System oder Flow, das sie benötigt, wird wahrscheinlich einen Fehler verursachen, wenn die Werte nicht festgelegt sind.

    - [nodes[endAlert1].outputs.watchResult.source] [MISSING_OUTPUT_MAPPING] "End alert"
      is missing output mapping for "watchResult"
    - [nodes[endAlert1].outputs.watchResult.source] [MISSING_OUTPUT_MAPPING] "End alert"
      is missing output mapping for "watchResult"
    

    Um dieses Problem zu beheben, bearbeiten Sie den Knoten endAlert1 und fügen Sie den fehlenden Code hinzu, um die Variable watchResult festzulegen (siehe Schritte 2.5 und 2.6).

Tipp:

Für jeden Endknoten wird ein Feld pro Ausgabevariable im Flow erstellt. Dies stellt sicher, dass alle möglichen Endknoten die gleichen Ausgaben zurückgeben. Wie sie festgelegt sind, wird jedoch auf jedem einzelnen Endknoten konfiguriert. Eine nützliche Möglichkeit, dies zu bedenken, besteht darin, dass die Eingabevariablen des Triggerknotens und die Ausgabevariablen der Endknoten die Vertragswerte sind, die für diesen Flow erforderlich sind, ähnlich wie Anforderungs- und Antwortobjekte für einen API-Aufruf.

Wenn keine Ausgabezuordnung auf einem Endknoten festgelegt ist, wird sie beim Anzeigen der Eigenschaften des Knotens auf der Arbeitsfläche in VS Code mit einer roten Warnung für "End" is missing output mapping for "<name>" hervorgehoben. Das ist die gleiche Warnung, die uip maestro flow validate als MISSING_OUTPUT_MAPPING anzeigt.


  • Schritt 3 – Überprüfen des Flusses​
  • 3.1 – Bestätigen Sie die Knoten und Verbindungen​
  • 3.2 – Auf Warnungen und Fehler prüfen​
  • Häufige Warnungen​

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben