Skriptunterstützung für komplexe Daten
Erstellen und referenzieren Sie komplexe Daten aus einem Skript. Verwenden Sie ein Skript, wenn Ihre Quelldaten aus einem Datenstrom, einer REST-Schrittantwort oder dem Schritt „Datensätze suchen“ stammen.
Verwenden Sie ein Skript, um komplexe Daten zu erstellen, wenn Daten aus diesen Quellen stammen.
| Datenquelle | Erstellen/zuordnen von komplexen Daten aus |
|---|---|
| Antwortstrom für Datenstromaktion | Schritt „Skript-Parser“ |
| REST-Schrittantwort | Skript-Schritt |
| Schritt „Datensätze suchen“ |
Antwortstrom für Datenstromaktion
Datenstromaktionen verwenden ein Parser-Skript, um Stream-Elementwerte komplexen Objektwerten zuzuordnen. Verwenden Sie beim Schreiben eines Parser-Skripts JavaScript-Methoden, die für das Datenstromformat geeignet sind. Verwenden Sie beispielsweise die Klasse JSON – Bereichsbezogen, um einen JSON-Datenstrom zu analysieren oder zu codieren.
Parser-Skripts haben Zugriff auf die Eingabe- und Ausgabeobjekte des Datenstroms sowie auf eine targetObject-Eigenschaft. Unter Datenstromaktionen finden Sie weitere Informationen zum Analysieren eines Antwortstroms zum Erstellen komplexer Daten.
REST-Schrittantwort
Sie können eine REST-Schrittantwort in ein oder mehrere komplexe Objekte konvertieren, indem Sie sie mit einem Skriptschritt analysieren. Um von einem Skriptschritt aus auf eine Antwort zuzugreifen, müssen Sie eine Eingabeskriptvariable erstellen und diese der Antwortnutzlast aus dem vorherigen REST-Schritt zuordnen. Weitere Informationen zum Erstellen von Skripteingabevariablen finden Sie unter Skriptschritt.
Schreiben Sie ein Skript, das komplexe Objektwerte REST-Antwortwerte zuordnet. Verwenden Sie beim Schreiben eines REST-Antwortskripts JavaScript-Methoden, die für das Antwortformat geeignet sind, z. B. die JSON-parse()-Methode.
Sie müssen keinen Skriptschritt verwenden, um eine REST-Anforderung aus komplexen Daten zu erstellen. Sie können komplexe Daten in einer vorherigen Aktion oder einem vorherigen Schritt generieren und diese dann einer Zeichenfolgeneingabe des REST-Schritts zuordnen. Zur Laufzeit konvertiert die Aktion oder der Flow die komplexen Daten in eine JSON-Darstellung.
Beispiel: Sehen Sie sich die in Erste Schritte mit dynamischen Eingaben verwendeten Skriptschritte für die Aktionen zur Datensammlung an. Die Datensammlungsaktionen zum Abrufen von Tabellen- und Feldnamen verwenden beide einen Skriptschritt, um eine REST-Antwort in einem JSON-Objekt zu analysieren. Beide Datensammlungsaktionen erstellen auch Ausgabevariablen, die komplexe Daten als JSON-Objekte speichern.
Schritt „Datensätze nachschlagen“
Während Flows Für jeden Flow-Logik die Logik verwenden können, um eine Liste von Datensätzen zu verarbeiten, erfordern Aktionen einen Skriptschritt. Der Skriptschritt ersetzt die Flow-Logik „ Für jeden “ durch JavaScript, z. B. in einer For- oder Während -Schleife.
Um von einem Skriptschritt aus auf Datensatzdaten zuzugreifen, müssen Sie eine Eingabeskriptvariable erstellen und diese den Datensatzdaten aus dem vorherigen Suchschritt zuordnen. Weitere Informationen zum Erstellen von Skripteingabevariablen finden Sie unter Skriptschritt.
Unter Erstellen Sie eine anwenderdefinierte Aktion, um ein Array von Objekten aus einer Liste von Datensätzen zu generieren finden Sie eine Beispielaktion, die eine Liste von Benutzerdatensätzen in ein Array von Kontaktobjekten konvertiert.
Dot-Walking-Objektstrukturen
Sie können Elemente aus der Struktur eines Objekts referenzieren, indem Sie den Pfad der Struktur punktweise durchlaufen. Alle komplexen Datenpfade beginnen mit dem Namen der Datenquelle. Dies ist entweder das globale Objekt für Eingaben, das globale Objekt für Ausgaben oder der Name des Arrays oder Objekts, das Sie im Skript erstellt haben.
Als Nächstes im Pfad werden die Namen der referenzierten Strukturelemente durch Punkte getrennt (auch als Punkte bezeichnet). Das Auflisten der Namen von Strukturelementen ist identisch mit dem Dot-Walking eines Referenzfelds, bei dem Sie die Tabellenstruktur für ein bestimmtes Referenzfeld auflisten.
Angenommen, Sie definieren ein Kontaktobjekt als Ausgabevariable. Das Objekt weist die folgende Struktur auf.
| Platzieren Sie in der Struktur | Bezeichnung | Name | Typ |
|---|---|---|---|
| Übergeordnet | Kontakt | Kontakt | Objekt |
| Untergeordnetes Element | Vorname | first_name | Zeichenfolge |
| Untergeordnetes Element | Nachname | last_name | Zeichenfolge |
| Untergeordnetes Element | E-Mail-Adressen | email_addresses | Array.Object |
| Urenkel | E-Mail-Adresse | email_address | Objekt |
| Urenkel | Typ | Typ | Auswahl |
| Urenkel | Zeichenfolge | ||
| Untergeordnetes Element | Telefon | telephone_number | Array.Object |
| Untergeordnetes Element | Postanschriften | „mailing_address“ | Array.Object |
Der Dot-Walking-Pfad zum Strukturelement „ Vorname “ wäre „ outputs.contact.first_name “, während der Pfad zum Strukturelement „E- Mail “ „ outputs.contact.email_addresses[0].email“ wäre, da Sie ein einzelnes Element des Arrays über seine angeben müssen JavaScript-Indexwert.
Allgemeine Leitlinien
Beachten Sie bei der Skripterstellung mit komplexen Daten die folgenden allgemeinen Richtlinien.
- Verwenden Sie Zeichenfolgeneingaben, um komplexe Daten in eine JSON-Zeichenfolge zu konvertieren
- Wenn Sie komplexe Daten einer Zeichenfolgeneingabe zuordnen, konvertiert Workflow-Studio sie automatisch in eine JSON-Zeichenfolge. Anstatt ein Skript zu schreiben, können Sie einem REST-Schritt eine Zeichenfolgeneingabe hinzufügen und sie komplexen Daten aus einer vorherigen Aktion oder einem vorherigen Schritt zuordnen.
- Speichern Sie Ihre Objekte als Vorlagen
- Speichern Sie Ihre Objekte als Vorlagen, damit Sie sie in anderen Aktionen, Flows und Skriptschritten wiederverwenden können.
- Erstellen Sie Skripteingabevariablen für den Zugriff auf vorherige Daten
- Erstellen Sie eine Skripteingabevariable für alle Daten, auf die Sie über die Aktionseingabe oder einen vorherigen Schritt zugreifen möchten. Ordnen Sie die Skripteingabevariable der Eingabe- oder Schrittdatenpille zu. Ordnen Sie beispielsweise die Skripteingabevariable einer Liste von Benutzerdatensätzen zu, die Sie in einem vorherigen Schritt gesucht haben.
- Erstellen Sie eine Skriptausgabevariable zum Speichern komplexer Daten
- Erstellen Sie eine Skriptausgabevariable, um komplexe Daten zu speichern, die Ihr Skript erstellt. Die Skriptausgabevariablen müssen mit den im Skript definierten Werten übereinstimmen. Erstellen Sie beispielsweise ein Kontakt-Array von Objekten, um mehrere Kontaktobjekte zu speichern. Speichern Sie das Kontaktobjekt als Vorlage, damit Sie es wiederverwenden können.
- Ordnen Sie die Aktionsausgabe der Skriptausgabevariablen zu
- Wenn eine anwenderdefinierte Aktion komplexe Daten ausgeben soll, fügen Sie eine Aktionsausgabe hinzu, und ordnen Sie sie der Datenpille für die Ausgabevariable Ihres Skriptschritts zu. Erstellen Sie beispielsweise ein Kontakt-Array, und laden Sie die Kontaktobjektvorlage, die Sie zuvor gespeichert haben. Ordnen Sie die Aktionsausgabe dem von Ihrem Skriptschritt erstellten Kontakt-Array zu.