automation-hub
2021.10
false
Wichtig :
Bitte beachten Sie, dass dieser Inhalt teilweise mithilfe von maschineller Übersetzung lokalisiert wurde.
UiPath logo, featuring letters U and I in white
Kein Support
Automation Hub-API-Handbuch
Automation CloudAutomation Cloud Public SectorAutomation Suite
Last updated 11. Nov. 2024

Power Query-Analysen für Daten aus der Automation Hub Open API

Das Analysieren der Daten aus der Automation Hub-API kann sich manchmal als schwierig erweisen, insbesondere wenn Sie einen sehr komplexen Bericht konsolidieren.

Auf dieser Seite stellen wir einige Tipps und Tricks vor, die zur Verbesserung des gesamten Datenanalyseprozesses verwendet werden können. Die Seite enthält:

  • Die Schritte mit Verweise auf die Dokumentation zur Open API und Power Query.
  • Eine Beispieldatei, in der Sie die Schritte direkt in Power Query ausführen können.

Einrichten der Hauptabfrage (für GET Automation Pipeline)

Verwenden Sie die folgenden Schritte, um die Hauptabfrage einzurichten:

  1. Gehen Sie zu Power BI oder Excel und drücken Sie Daten abrufen – wählen Sie dann Aus dem Web aus.
  2. Drücken Sie im neuen Fenster auf Erweitert.
  3. Hier müssen Sie die entsprechenden Open API-Daten für die Verbindung hinzufügen.
  4. Fügen Sie zunächst den Endpunkt hinzu (z. B. GET Automation Pipeline).
  5. Dann die Header
  6. Fügen Sie in den Headern das Authentifizierungstoken hinzu.
  7. Achten Sie darauf, dass Sie das Wort Bearer vor dem Wert des Tokens einfügen.
  8. Klicken Sie auf Verbinden.

Sie sollten nun die JSON-Antwort aus der Open API in Power BI abrufen. Außerdem müssen Sie die Daten vor dem Speichern der Tabelle mit Hilfe der folgenden Schritte näher überprüfen:

  1. Erweitern Sie das Datenobjekt.
  2. Erweitern Sie dann das Objekt des Prozesses.
  3. Jetzt können Sie die Daten in eine Tabelle konvertieren; das Ergebnis ist eine einzige Spalte mit allen Datensätzen.
  4. Erweitern Sie diese Spalte, um alle verfügbaren Datensätze in der JSON-Datei abzurufen – Sie können alle oder nur einen Teil davon abrufen.
  5. Überprüfen Sie nach der Erweiterung alle Spalten, da einige von ihnen verschachtelte Datensätze enthalten, die Sie erweitern müssen.
  6. Gehen Sie jede Spalte durch, bis Sie sicher sind, dass die Daten in Ordnung sind. Einige der Spalten können Sie auch nach Ihren Wünschen formatieren.
  7. Sobald die Daten korrekt sind, drücken Sie Speichern und Schließen und warten Sie, bis die Daten geladen sind.
  8. Sie können jetzt mit dem Erstellen Ihres Dashboards/Berichts beginnen.

Verwenden der Paginierung zum dynamischen Abrufen aller Elemente aus jeder Open API-Anfrage

Beginnen Sie mit einer einfachen Abfrage, in der Sie keinen Grenzwertparameter verwenden. Standardmäßig erhalten Sie eine Antwort mit der Standardanzahl von Elementen (20) und fahren dann mit den folgenden Schritten fort:

  1. Drilldown in das Feld totalPages.
  2. Klicken Sie auf die Schaltfläche Funktion und Ihre Formel sollte sich zu =totalPages ändern.
  3. Fügen Sie die folgende Formel =List.Numbers(1,totalPages,1) ein.
  4. Eine Liste wird mit allen in der API-Antwort verfügbaren Seitennummern generiert.

Diese Liste ist dynamisch, basierend auf der Seitenanzahl, die sie aus der Antwort erhält. Wenn Sie also die API-Abfrage aktualisieren und neue Daten (eine neue Seite) haben, werden sie automatisch in der Liste abgerufen. Fahren Sie mit den folgenden Schritten fort:

  1. Wandeln Sie die Liste in eine Tabelle um.
  2. Benennen Sie die Spalte in Seite um und ändern Sie den Datentyp zu Text.
  3. Erstellen Sie eine benutzerdefinierte Spalte.
  4. Fügen Sie in der Spaltenformel die folgende Abfrage hinzu:
let 
       Source = Json.Document(Web.Contents(" https://{yourDomain}/automationhub_/api/v1/openapi/automationpipeline?pre=all&page="&[Page], [Headers=[#"Content-Type"="application/json", #"x-ah-openapi-app-key"="test", #"x-ah-openapi-auth"="openapi-token", Authorization="Bearer xxxxxx"]])), 
       data = Source[data], 
       processes = data[processes] 
   in 
       processeslet 
       Source = Json.Document(Web.Contents(" https://{yourDomain}/automationhub_/api/v1/openapi/automationpipeline?pre=all&page="&[Page], [Headers=[#"Content-Type"="application/json", #"x-ah-openapi-app-key"="test", #"x-ah-openapi-auth"="openapi-token", Authorization="Bearer xxxxxx"]])), 
       data = Source[data], 
       processes = data[processes] 
   in 
       processes 

Die obige Abfrage ruft die Daten aus der Automatisierungspipeline ab und verwendet den Seitenparameter (den wir dynamisch in der Liste erhalten), um den Inhalt für alle verfügbaren Seiten abzurufen. 5. Klicken Sie auf „Ok“ und erweitern Sie die Spalte. Sie haben jetzt alle verfügbaren Elemente von der Antwort, unabhängig davon, wie viele Seiten die API zurückgibt.

Analysieren einer anderen Abfrage (GET Automations), um die Felder „Beschreibung“ und „Anwendung“ zu extrahieren

Das Analysieren der (durch Komma getrennten) Anwendungen erfolgt in folgenden Schritten:

  1. Wechseln Sie im Abfrageeditor zu der Spalte, in der Sie Ihre Anwendungen haben, und drücken Sie auf „Erweitern“ für neue Zeilen.
  2. Drücken Sie erneut auf Erweitern und wählen Sie die zu extrahierenden Anwendungsmetadaten aus, z. B. den Anwendungsnamen.
  3. Klicken Sie auf der Registerkarte „Start“/auf dem Menüband auf Gruppieren nach.
  4. Wählen Sie im Fenster „Gruppieren nach“ folgende Option aus:

    • Die Gruppierung erfolgt nach der Spalte „Prozess-ID“, da die ID eindeutig ist.
    • Der neue Spaltenname sollte z. B. „Anwendungen aggregiert“ lauten.
    • Vorgang: Summe
    • Spalte: Die Spalte, die Sie für die Anwendungen erweitert haben (im obigen Beispiel ist sie Column.1applications.applications_name).
  5. Nachdem Sie auf „OK“ gedrückt haben, erhalten Sie eine Fehlermeldung, da die Summenfunktion nicht mit Texteingaben arbeiten kann.
  6. Gehen Sie zur Formelleiste und ersetzen Sie List.Sum durch Text.Combine als Funktionen
  7. Fügen Sie außerdem in der Formel nach dem Namen der Anwendungsspalte ein Trennzeichen für Ihre Texteinträge hinzu – z. B. „ , “

    So sieht die Formel vor und nach der Änderung aus:

    Vor der Änderung

    Nach der Änderung

    = Table.Group(#"Expanded Column1.applications1", {"Column1.process_id

    = Table.Group(#"Expanded Column1.applications1", {"Column1.process_id

  8. Klicken Sie auf „Speichern“ und sehen Sie sich die Spalteneinträge an:

Analyse der Beschreibung (abgegrenzt durch einen Absatz)

Dieselben Schritte wie bei der Beschreibung, aber da die Beschreibung ein Textfeld ist, bei dem die verschiedenen Absätze getrennt werden müssen, wird in der Formel „#(lf)“ ein anderes Trennzeichen verwendet.

Vor der Änderung

Nach der Änderung

= Table.ExpandRecordColumn(#"Expanded Column1.process_description.blocks", "Column1.process_description.blocks", {"text

= Table.Group(#"Expanded Column1.process_description.blocks1", {"Column1.process_id

Analysieren einer anderen Abfrage (GET Automations), um benutzerdefinierte Fragen/Fragen der einfachen Bewertung zu extrahieren

Beginnen Sie mit einer neuen Abfrage für „GET Automations“ (Sie können diejenige mit der oben gezeigten Paginierung verwenden) und führen Sie die folgenden Schritte aus:

  1. Erweitern Sie die folgenden Spalten:

    • Prozess-ID
    • Advanced_Information oder einfache Bewertung (beide funktionieren gleich, aber für dieses Tutorial arbeiten wir mit der advanced_information).
  2. Erweitern Sie die Felder erneut, um die Fragenfelder abzurufen.
  3. Erweitern Sie sie erneut und rufen Sie die folgenden Felder ab.

    • Question_text
    • Answer_text
    • Question_response_answers
  4. Erweitern Sie Question_response_answers und extrahieren Sie response_choice_text .
  5. Kombinieren Sie die Spalten Answer Text und Response_choice_text mithilfe der Formel zu einer einzigen Spalte.
if [AnswerText] is null then [AnswerChoice.response_choice_text] else [AnswerText].

Dies ist immer anwendbar, da Sie entweder eine Textantwort oder eine Antwortmöglichkeit haben können (niemals beides). Setzen Sie den Prozess mit den folgenden Schritten fort:

  1. Überprüfen und entfernen Sie alle NULL-Einträge aus der Spalte Frage.
  2. Verwenden Sie eine Pivot-Spalte, um alle aktuellen Daten aus den Spalten „Frage“ und „Antwort“ in Zeilen zu übertragen.
  3. Wählen Sie die Spalte Frage aus und klicken Sie im Menü Transformieren auf die Spalte Pivot.
  4. Wählen Sie die Antwortspalte als Ihre Wertespalte aus.
  5. Wählen Sie Nicht aggregieren als Aggregatwertefunktion aus und klicken Sie auf OK.

Alle Ideen haben jetzt eine entsprechende Spalte, die die benutzerdefinierten Fragen und ihre entsprechenden Werte darstellt.

Zusammenführen von Abfragen (von GET Automations) in Ihre Hauptabfrage (GET Automation-Pipeline)

Um zwei verschiedene Abfragen in Power BI zusammenzuführen, sehen Sie sich an, wie dies im Allgemeinen in der Power Query geschieht. Danach können Sie mit der Abfrage der Automatisierungspipeline beginnen und sie mit der Abfrage „GET Automations“ zusammenführen.

  • Auf diese Weise erweitern Sie die verfügbaren Spalten aus „Get Automation Pipeline“ mit denen aus „Get Automations“.
  • Sie müssen die Prozess-ID verwenden, um die Abfragen zusammenzuführen, da sie sowohl der eindeutige Bezeichner als auch der gemeinsame Schlüssel für alle Abfragen ist.

Automation Hub-Demo zur Analyse von API Power Querys

Nachfolgend sehen Sie eine Videodemonstration der in diesem Artikel beschriebenen Schritte.

In diesem Video:

Die im Video verwendete Beispieldatei kann hier heruntergeladen werden.

War diese Seite hilfreich?

Hilfe erhalten
RPA lernen – Automatisierungskurse
UiPath Community-Forum
Uipath Logo White
Vertrauen und Sicherheit
© 2005–2024 UiPath. Alle Rechte vorbehalten