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 einem Schritt „Datensätze nachschlagen“ stammen.
Verwenden Sie ein Skript, um komplexe Daten zu erstellen, wenn Daten aus diesen Quellen stammen.
| Datenquelle | Erstellen/zuordnen Sie komplexe Daten aus |
|---|---|
| Datenstrom-Aktionsantwort-Stream | Schritt „Skriptparser“ |
| REST-Schrittantwort | Skript-Schritt |
| Schritt „Datensätze suchen“ |
Datenstrom-Aktionsantwort-Stream
Datenstrom-Aktionen verwenden ein Parser-Skript, um Stream-Elementwerte komplexen Objektwerten zuzuordnen. Verwenden Sie beim Schreiben eines Parser-Skripts JavaScript-Methoden, die dem Datenstromformat entsprechen. Verwenden Sie beispielsweise die Klasse JSON - Scoped, 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. Weitere Informationen zum Analysieren eines Antwortstroms zum Erstellen komplexer Daten finden Sie unter Datenstromaktionen.
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 REST-Antwortwerte komplexen Objektwerten zuordnet. Verwenden Sie beim Schreiben eines REST-Antwortskripts JavaScript-Methoden, die für das Antwortformat geeignet sind, z. B. die JSON-Methode parse().
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 sie dann einer Zeichenfolgeneingabe des REST-Schritts zuordnen. Zur Laufzeit konvertiert die Aktion oder der Flow die komplexen Daten in eine JSON-Darstellung.
Sehen Sie sich beispielsweise die in Beginnen Sie mit dynamischen Eingaben verwendeten Skriptschritte für die Datenerfassungsaktionen an. Die Datenerfassungsaktionen zum Abrufen von Tabellen- und Feldnamen verwenden beide einen Skriptschritt, um eine REST-Antwort in ein JSON-Objekt zu analysieren. Beide Datenerfassungsaktionen erstellen auch Ausgabevariablen, die komplexe Daten als JSON-Objekte speichern.
Schritt „Datensätze nachschlagen“
Während Flows Für jede Flow-Logik verwenden können, um eine Liste von Datensätzen zu verarbeiten, erfordern Aktionen einen Skriptschritt. Der Skriptschritt ersetzt die Flow-Logik vom Typ „ Für alle “ durch JavaScript, z. B. eine „ Für “- oder „ Während “-Schleife.
Um über einen Skriptschritt 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 benutzerdefinierte 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 durchlaufen. Alle komplexen Datenpfade beginnen mit dem Namen der Datenquelle, der entweder das globale Objekt für Eingaben, das globale Objekt für Ausgaben oder der Name des Arrays oder Objekts ist, das Sie im Skript erstellt haben.
Als nächstes im Pfad stehen die Namen jedes referenzierten Strukturelements, getrennt durch Punkte (auch als Punkte bezeichnet). Das Auflisten der Namen von Strukturelementen ist identisch mit dem Dot-Walking eines Referenzfelds, bei dem Sie die Tabellenstruktur in einem bestimmten Referenzfeld auflisten.
Angenommen, Sie definieren ein Kontaktobjekt als Ausgabevariable. Das Objekt hat die folgende Struktur.
| In Struktur platzieren | 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 |
| Großes Kind | 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-Walk-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 durch seine angeben müssen JavaScript-Indexwert.
Allgemeine Richtlinien
Beachten Sie beim Skripting 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 Flow Designer 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, um auf vorherige Daten zuzugreifen
- 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, um komplexe Daten zu speichern
- Erstellen Sie eine Skriptausgabevariable, um alle komplexen Daten zu speichern, die Ihr Skript erstellt. Die Skriptausgabevariablen müssen mit den im Skript definierten Werten übereinstimmen. Erstellen Sie beispielsweise ein Kontakte-Array von Objekten, um mehrere Kontaktobjekte zu speichern. Speichern Sie das Kontaktobjekt als Vorlage, damit Sie es erneut verwenden können.
- Ordnen Sie die Aktionsausgabe der Skriptausgabevariablen zu
- Wenn Sie möchten, dass eine benutzerdefinierte Aktion komplexe Daten ausgibt, fügen Sie eine Aktionsausgabe hinzu, und ordnen Sie sie der Datenpille für Ihre Skript-Schrittausgabevariable zu. Erstellen Sie beispielsweise ein Kontakte-Array, und laden Sie die Kontaktobjektvorlage, die Sie zuvor gespeichert haben. Ordnen Sie die Aktionsausgabe dem von Ihrem Skriptschritt erstellten Kontakt-Array zu.