Beispiel für die Verwendung von Aktionen im XML-Paket

Erstellen Sie unter Verwendung des XML-Pakets einen Bot, der Daten aus einer XML-Datei liest und in ein Excel-Arbeitsblatt schreibt.

Das in diesem Tutorial verwendete XML-Beispiel hat die folgende Struktur:
<movies>
    <movie genre="" year="">
        <name></name>
        <description></description>
        <director></director>
        <writers>
            <writer type=""></writer>
            <writer type=""></writer>
        </writers>
        <rating>R</rating>
    </movie>
</movies>

Bevor Sie beginnen, laden Sie eine XML-Beispieldatei herunter.

Das Tutorial wird die folgenden Aktionen demonstrieren:
  • Verwenden eines XPath-Ausdrucks, um eine Knotenmenge mit einem bestimmten Wert zu erhalten, und durchlaufen der Elemente in der Knotenmenge, z. B. Filme mit einer bestimmten Bewertung in diesem Tutorial.
  • Verwenden einer XPath-Funktion, um die untergeordneten Knotengruppen zu durchlaufen.
  • Verkettung von Variablen zur Erstellung einer Zeichenkette.
  • Schreiben von Daten in ein Excel-Arbeitsblatt.

Vorbereitungen

Stellen Sie Folgendes sicher:

  • Sie wissen, wie man Bots erstellt.
  • Sie sind mit der Benutzeroberfläche von Control Room vertraut.

Prozedur

  1. Erstellen Sie einen Bot und nennen Sie ihn XMLDataReader.
  2. Fügen Sie einen Schritt hinzu, um alle Aufgaben zum Öffnen eines Excel-Arbeitsblattes zu gruppieren.
    1. Fügen Sie die Aktion Schritt > Schritt nach dem Ablauf von Start in den Bot Editor ein.
      Anmerkung: Um eine Aktion hinzuzufügen, suchen Sie die Aktion im Bereich Aktionen und ziehen Sie sie in den Ablauf des Bots im Bot Editor.
    2. Geben Sie in Titel den Eintrag Open an Excel Sheet ein und speichern Sie die Aktion.
  3. Um ein Excel-Arbeitsblatt zu erstellen und zu öffnen, verwenden Sie Excel Advanced > Arbeitsmappe erstellen.
    1. Fügen Sie die Aktion Excel Advanced > Arbeitsmappe erstellen innerhalb der Aktion Schritt hinzu.
    2. Geben Sie für Dateipfad C:\Filme\Filme.xlsx ein, und speichern Sie die Datei Aktion. Wenn der Ordner Filme im angegebenen Pfad nicht vorhanden ist, erstellen Sie einen Ordner Filme im Pfad.
  4. Um die erste Zelle auf dem Excel-Arbeitsblatt auszuwählen, verwenden Sie die Aktion Excel Advanced > Zu Zelle wechseln.
    1. Fügen Sie die Aktion Excel Advanced > Zu Zelle wechseln nach der Aktion Excel Advanced hinzu. Aktion Arbeitsmappe erstellen.
    2. Klicken Sie auf Spezifische Zelle, wenn sie nicht bereits ausgewählt ist, und geben Sie A1 ein.
    3. Speichern Sie die Aktion.
  5. Erstellen Sie einen weiteren Schritt, um alle Aufgaben zum Abrufen von XML-Daten zu gruppieren.
    1. Fügen Sie die Aktion Schritt > Schritt nach der ersten Aktion Schritt hinzu.
    2. Geben Sie in Titel den Eintrag Get XML Data ein und speichern Sie die Aktion.
  6. Starten Sie eine XML-Sitzung.
    1. Fügen Sie die Aktion XML > Sitzung starten innerhalb des Schritts XML-Daten abrufen hinzu.
    2. Wählen Sie unter Datei die Option Desktop und suchen Sie die heruntergeladene XML-Beispieldatei und wählen Sie sie aus.
    3. Speichern Sie die Änderungen.
  7. Um alle Filmknoten mit dem Rating R zu erhalten, verwenden Sie die Aktion Mehrere Knoten abrufen.
    1. Fügen Sie die Aktion XML > Mehrere Knoten abrufen nach der Aktion Sitzung starten hinzu.
    2. Geben Sie in XPath-Ausdruck den Eintrag //movie[rating/text()='R'] ein und speichern Sie die Aktion.
      Der ausgewählte Knotensatz wird in einer Systemvariablen gespeichert und steht nun dem Iterator Für jeden Knoten in einem XML-Dataset zur Verfügung.
    3. Um sicherzustellen, dass die Aktion den gesamten Knotensatz und nicht nur die Textknoten abruft, klicken Sie auf XPath-Ausdruck.
  8. Verwenden Sie die Aktion Schleife, um durch die ausgewählte Knotenmenge zu iterieren, die die Aktion Mehrere Knoten abrufen abruft.
    1. Fügen Sie Schleife > Schleife nach XML: ein. Mehrere Knoten abrufenAktion.
    2. Unter Iterator wählen Sie XML > Für jeden Knoten in einem XML-Dataset als Iterator.
    3. Klicken Sie unter Aktuelle Zeile dieser Variablen zuweisen auf (x) und erstellen Sie eine Variable mit dem Standardnamen, z. B. XMLNode. Jedes Element des Knotensatzes ist nun über die Variable verfügbar.
    4. Speichern Sie den Aktion.
  9. Um den Filmnamen aus dem iterierten Knoten zu erhalten, verwenden Sie die Aktion Einzelnen Knoten abrufen.
    1. Fügen Sie die Aktion XML > Einzelnen Knoten abrufen innerhalb der Schleife: Schleife-Aktion hinzu.
    2. Geben Sie in XPath-Ausdruck den Eintrag $XMLNode$/name ein.
    3. Erstellen Sie unter Die Ausgabe einer Variablen zuweisen eine Variable und nennen sie diese sMovieName.
    4. Speichern Sie den Aktion.
  10. Um den Filmnamen aus der XMLNode-Variable zu schreiben, verwenden Sie die AktionZelle festlegen.
    1. Fügen Sie die Aktion Excel Advanced > Zelle festlegen nach der Aktion Einzelnen Knoten abrufen ein.
    2. Klicken Sie auf Aktive Zelle, geben Sie $sMovieName$ für Zellenwert ein, und speichern Sie die Aktion.
  11. Um eine neue Zelle im Excel-Arbeitsblatt auszuwählen, verwenden Sie die Aktion Gehe zu Zelle.
    1. Fügen Sie die Aktion Gehe zu Zelle nach der Aktion Zelle festlegen nach Excel Advanced: Zelle festlegen-Aktion hinzu.
    2. Klicken Sie auf Aktive Zelle, wählen Sie Eine Zelle nach rechts und speichern Sie dann die Aktion.
  12. Um den Namen des Regisseurs aus dem iterierten Knoten zu erhalten, verwenden Sie die Aktion Einzelne Zelle abrufen.
    1. Fügen Sie die Aktion XML > Einzelknoten abrufen nach Excel Advanced: Gehe zu Zelle (Aktion) hinzu.
    2. Geben Sie in XPath-Ausdruck den Eintrag $XMLNode$/director ein.
    3. Erstellen Sie unter Die Ausgabe einer Variablen zuweisen eine Variable mit dem folgenden Namen: sDirector.
    4. Speichern Sie den Aktion.
  13. Um den Namen des Regisseurs in die XMLNode-Variable zu schreiben, verwenden Sie die Aktion Zelle festlegen.
    1. Fügen Sie die Aktion Excel Advanced > Zelle festlegen nach XML: Einzelknoten abrufen (Aktion) hinzu.
    2. Klicken Sie auf Aktive Zelle, geben Sie $sDirector$ für Zellenwert ein, und speichern Sie die Aktion.
  14. Um eine neue Zelle im Excel-Arbeitsblatt auszuwählen, verwenden Sie die Aktion Gehe zu Zelle.
    1. Fügen Sie die Aktion Gehe zu Zelle nach der Excel Advanced: Zelle festlegen-Aktion hinzu.
    2. Klicken Sie auf Aktive Zelle, wählen Sie Eine Zelle nach rechts und speichern Sie die Aktion.
  15. Da der<Verfasser->Knoten mehrere<Verfasser->Knoten enthalten kann, ermitteln Sie jeden Namen der Verfasser, verketten Sie die Namen und schreiben Sie sie in eine einzige Zelle, anstatt Werte in mehrere Zellen zu schreiben. Dazu fügen Sie die Aktion Schleife innerhalb der aktuellen Aktion Schleife ein.
    1. Um die Nummer des<Verfasser->Knotens innerhalb der<Verfasser->Knoten abzurufen, fügen Sie XML > Xpath-Funktion ausführen nach der Excel Advanced: Zelle festlegen-Aktion hinzu. Geben Sie in XPath-Ausdruck den Eintrag count($XMLNode$/writers/writer) ein. Erstellen Sie unter Die Ausgabe einer Variablen zuweisen eine Variable namens sWriterCount.
      Verwenden Sie<Verfasser->Knoten, um eine Schleife durch alle<Verfasser->Knoten auszuführen.
    2. Fügen Sie die Aktion Schleife > Schleife nach der XML: XPath-Funktion ausführen-Aktion hinzu.
      Wichtig: Die zweite Schleife-Aktion muss innerhalb der Haupt-Aktion Schleife eingefügt werden.
    3. Unter Iterator wählen Sie Für n-mal als Iterator.
    4. In Mal geben Sie Folgendes ein: $sWriterCount.String:toNumber$
      Anmerkung: sWriterCount enthält einen Zeichenfolge-Wert. Um eine Zeichenfolge in eine Nummer umzuwandeln, können Sie das Format
      lt;variablenname>.String:toNumber$ verwenden, zum Beispiel $sWriterCount.String:toNumber$.
    5. Erstellen Sie unter Aktuellen Wert einer Variablen zuweisen (Optional) eine Variable mit dem Namen Counter.
    6. Speichern Sie den Aktion.
  16. Um die Werte aus allen Verfasser-Knoten zu verketten, erstellen Sie eine Zeichenfolgevariable.
    1. Klicken Sie im Bereich Variablen auf das Plus-Symbol.
      Das Fenster Variable erstellen... öffnet sich.
    2. Wählen Sie unter Typ die Option Zeichenfolge.
    3. In Name geben Sie sWriters ein.
    4. Klicken Sie auf Erstellen.
  17. Um den Wert aus dem iterierten<Verfasser->Knoten abzurufen, verwenden Sie die Aktion Einzelnen Knoten abrufen.
    1. Fügen Sie die Aktion XML > Einzelnen Knoten abrufen innerhalb der zweiten Schleife-Aktion ein.
    2. Geben Sie in XPath-Ausdruck den Eintrag $XMLNode$/writers/writer[$Counter.Number:toString$] ein.
      Mit der Variablen Counter können Sie auf einen Knoten mit einem bestimmten Index zugreifen. Da die Variable Counter einen numerischen Wert enthält, wird der Ausdruck .Number:toString$ zur Variable Counter hinzugefügt, um sie in eine Zeichenfolge umzuwandeln.
    3. Erstellen Sie unter Die Ausgabe einer Variablen zuweisen eine Variable und nennen sie diese sWriter.
    4. Speichern Sie den Aktion.
  18. Um Werte aus den Verfasser-Knoten zuzuweisen, verwenden Sie die Aktion Zeichenfolge > Zuweisen.
    1. Fügen Sie die Aktion Zeichenfolge > Zuweisen nach XML: Einzelknoten abrufen innerhalb der zweiten Schleife ein.
    2. Lassen Sie Quell-Zeichenfolgenvariable(n)/Wert auswählen (Optional) leer und geben Sie $sWriters$, $sWriter$ ein.
    3. Wählen Sie unter Die Zeichenfolgenvariable für das Ziel auswählen die Option sWriters aus.
    4. Speichern Sie den Aktion.
    Nach Abschluss der inneren Schleife enthält die Variable sWriters alle Namen der Verfasser.
  19. Um die Namen der Verfasser in eine neue Zelle zu schreiben, verwenden Sie die Aktion Excel Advanced > Zelle festlegen innerhalb der Hauptschleife.
    1. Fügen Sie die Aktion Excel Advanced > Zelle festlegen nach der inneren Schleife-Aktion innerhalb der ersten Schleife-Aktion hinzu.
    2. Klicken Sie auf Aktive Zelle.
    3. Geben Sie $sWriters$ für Zellenwert ein.
    4. Speichern Sie den Aktion.
    Die Daten, die von einem<Film->Knoten, empfangen wurden, werden in eine Zeile geschrieben. Zum Schreiben der Daten des nächsten<Film->müssen Sie die nächste Zeile des Excel-Arbeitsblatts auswählen.
  20. Um den Cursor in die nächste Zeile zu bewegen, verwenden Sie die Aktion Excel Advanced > Gehe zu Zelle.
    1. Fügen Sie die Aktion Gehe zu Zelle nach der Aktion Zelle festlegen ein.
    2. Klicken Sie auf Aktive Zelle, wählen Sie Zeilenanfang, und speichern Sie dann die Aktion.
    3. Fügen Sie die Aktion Gehe zu Zelle wieder hinzu. Klicken Sie auf Aktive Zelle, wählen Sie Eine Zelle darunter, und speichern Sie dann die Aktion.
  21. Bevor der nächste Knoten im abgerufenen<Film->Knotensatz iteriert wird, müssen Sie die Variable sWriters zurücksetzen. Um die Variable sWriters zurückzusetzen, führen Sie die folgenden Schritte durch:
    1. Fügen Sie die Aktion Zeichenfolge > Zuweisen nach der Aktion Excel Advanced: Gehe zu Zelle innerhalb der Hauptschleife hinzu.
    2. Lassen Sie Quell-Zeichenfolgenvariable(n)/Wert auswählen (Optional) leer.
    3. Wählen Sie unter Die Zeichenfolgenvariable für das Ziel auswählen die Option sWriters aus.
    4. Speichern Sie den Aktion.
  22. Erstellen Sie einen Schritt.
    1. Fügen Sie die Aktion Schritt > Schritt nach der zweiten Aktion Schritt ein.
    2. In Titel geben Sie Close the file ein.
  23. Um das Excel-Arbeitsblatt zu schließen, verwenden Sie die AktionExcel Advanced Schließen.
    1. Fügen Sie Excel Advanced > Schließen im Schritt Datei schließen hinzu.
    2. Speichern Sie die Änderungen.
  24. Führen Sie den Bot aus.