Komplexe Daten
Verwenden Sie eine grafische Benutzeroberfläche, um mit Sammlungen komplexer strukturierter Daten zu arbeiten. Helfen Sie Designanwendern, die Organisation strukturierter Daten zu verstehen und einzelne Elemente hinzuzufügen, zu entfernen oder zu konfigurieren.
Mit komplexen Daten können Sie strukturierte Daten in einem maschinenlesbaren Format wie JavaScript Object Notation (JSON) oder eXtensible Markup Language (XML) codieren und speichern. Sie können die Schnittstelle Flow Designer verwenden, um die Organisation strukturierter Daten anzuzeigen und zu verstehen sowie Datenstrukturen zu erstellen. Sie können beispielsweise eine Kontaktdatenstruktur erstellen, die aus Informationen besteht, die Sie in einem Benutzerdatensatz suchen, z. B. Vorname, Nachname und E-Mail-Adresse.
Sie können komplexe Daten aus diesen Flow Designer -Schnittstellen erstellen.
| Flow DesignerSchnittstelle | Beispielverwendung |
|---|---|
| Aktionseingaben und -ausgaben | Erstellen Sie eine Aktion, die ein Objekt aus Datensatzdaten generiert. Füllen Sie das Objekt mit Datensatzdaten aus, nach denen die Aktion sucht. Weitere Informationen finden Sie unter Erstellen Sie eine benutzerdefinierte Aktion, um ein Objekt aus einem Datensatz zu generieren. |
| Eingabe- und Ausgabevariablen für Skriptschritte | Schreiben Sie ein Skript, um ein Array von Objekten aus einer Liste von Datensätzen zu erstellen. Weitere Informationen finden Sie unter Erstellen Sie eine benutzerdefinierte Aktion, um ein Array von Objekten aus einer Liste von Datensätzen zu generieren. Schreiben Sie ein Skript, um ein JSON-Dokument in eine Ausgabe vom Typ Objekt zu analysieren. |
| Subflow-Eingaben und -Ausgaben | Erstellen Sie einen Subflow, der ein Objekt als Eingabe akzeptiert und zum Aufrufen eines externen Service verwendet. |
| XML-Parser-Schritt Zielfeldkonfigurationen | Analysieren Sie eine XML-Nutzlast mit dem XML-Parser-Schritt in ein komplexes Datenobjekt. |
| Feld „REST-API-Auslösertext“. | Analysieren Sie eine eingehende REST-API-Anforderung in ein komplexes Datenobjekt, und verwenden Sie die Werte in einem Flow. Weitere Informationen finden Sie unter REST-API-Auslöser. |
Vorteile
- Analysieren und formatieren Sie Daten, ohne Code schreiben zu müssen. Erstellen Sie beispielsweise Datenvariablen, um eine Antwortnachricht zu analysieren oder eine Anforderungsnachricht zu formatieren.
- Erstellen Sie beliebige Datenstrukturen. Erstellen Sie beispielsweise eine Problemdatenstruktur, die Informationen aus vorhandenen Interaktions- und Incident-Datensätzen kombiniert, oder erstellen Sie eine Datenstruktur, um eine benutzerdefinierte Integration zu unterstützen.
- Zeigen Sie die Organisation von Datenstrukturen an. Beispielsweise kann eine Problemdatenstruktur aus einem Benutzerobjekt bestehen, das beschreibt, wer bezüglich des Problems kontaktiert werden soll, und einem Verlaufsobjekt, um die Arbeit zu beschreiben, die zur Lösung des Problems durchgeführt wurde. Sie können eine Benachrichtigungsaktion mit dem Pfad zu der im Benutzerobjekt aufgeführten E-Mail-Adresse konfigurieren und einen Subflow zum Eskalieren von Problemen mit dem Pfad zum Status aufrufen oder die Anzahl aus dem Verlaufsobjekt neu zuweisen.
- Zugriff auf Datenstruktur über API-Aufrufe zulassen. Rufen Sie beispielsweise eine Aktion oder einen Subflow aus einem Skript auf und verwenden Sie die vordefinierte Datenstruktur als Eingabewerte.
- Datenstrukturen als Vorlagen speichern und wiederverwenden Speichern Sie beispielsweise das Benutzerobjekt als Vorlagendatenstruktur zur Wiederverwendung in anderen Aktionen und Flows.
Datenstruktur
Eine Datenstruktur ist eine Sammlung zugehöriger Datenelemente, die in einer Hierarchie organisiert sind. Jedes Element in einer Datenstruktur hat einen eigenen Datentyp und eine eigene eindeutige Position in der Hierarchie.
Zum Beispiel besteht diese Datenstruktur aus einem übergeordneten Element „Employee“ mit vier untergeordneten Elementen für ID-Nummer, Name, Startdatum und Kontakt-E-Mail. Das Kontakt-E-Mail-Element ist auch ein übergeordnetes Element mit einem untergeordneten Element.
Im Datenbereich wird die Datenstrukturhierarchie als Struktur von reduzierbaren und erweiterbaren Datenpillen angezeigt, genau wie bei Datensatzvariablen. Übergeordnete Elemente haben ein Pfeilsymbol, um die Hierarchie zu reduzieren oder zu erweitern.
Hier ist beispielsweise die Mitarbeiter-Datenstruktur aus dem Datenbereich.
Sie können den Datenbereich oder die Datenauswahl verwenden, um bestimmte Werte aus einer Datenstruktur auszuwählen. Datenstrukturen ähneln Datenpillen für Datensätze in, in denen Sie per Dot-Walk zu bestimmten Elementen innerhalb der Struktur navigieren oder navigieren können. Wenn Sie ein Datenelement auswählen, zeigt Flow Designer den Pfad dazu als Datenpille an, genau wie bei jeder anderen Datenelementauswahl. Wenn Sie beispielsweise das Datenelement Startdatum auswählen, lautet der Pfad [Input->Mitarbeiter->Startdatum].
Sie können einen Elementdatenpfad auf die gleiche Weise verwenden wie einen XPath- oder JPath-Pfad. Manchmal können Sie den Datenpillenpfad sogar in eine der folgenden Pfadnotationen konvertieren.
Komplexe Datentypen
Sie erstellen Datenstrukturen mit einer oder mehreren Array- oder Objektvariablen. Nur diese Variablendatentypen unterstützen untergeordnete Variablen.
Eine Array-Variable enthält Werte für einen Elementtyp. Die übergeordnete Variable ist immer vom Datentyp Array, und es gibt immer nur eine untergeordnete Variable, die eine Instanz des vom Array unterstützten Datentyps ist. Erstellen Sie Array-Variablen, wenn eine Eingabe oder Ausgabe mehrere Werte desselben Datentyps akzeptiert.
Sie können beispielsweise ein Kontakt-E-Mail-Array erstellen, um alle E-Mail-Adressen aufzulisten, die einer bestimmten Person zugeordnet sind.
| Komponentenbezeichnung | Datentyp | Musterdaten |
|---|---|---|
| Kontakt-E-Mail | Array.Zeichenfolge | beth.anglin@example.com und beth@anglin.com |
| Wenden Sie sich an Email_child0 | Zeichenfolge |
Eine Objektvariable enthält eine beliebige Anzahl und Anordnung von untergeordneten Variablen, die jeweils einen eigenen Datentyp und eigene Werte haben. Durch das Verschachteln von Objektvariablen können Sie komplexe Datenstrukturen erstellen, die einem Tabellenschema ähneln, bei dem eine Tabelle zugehörige Datensätze in einer anderen Tabelle enthält. Erstellen Sie Objektvariablen, wenn eine Ein- oder Ausgabe eine oder mehrere zugehörige Eigenschaften akzeptiert.
Sie können beispielsweise ein Employee-Objekt erstellen, um Informationen zu den Personen zu definieren, die in einem Unternehmen arbeiten.
| Komponentenbezeichnung | Datentyp | Musterdaten |
|---|---|---|
| Mitarbeiter | Objekt | |
| ID-Nummer | Ganzzahl | 20190304000101 |
| Name | Zeichenfolge | Beth Anglin |
| Startdatum | Datum/Uhrzeit | 4. März 2019 |
| Kontakt-E-Mail | Array.Zeichenfolge | beth.anglin@example.com und beth@anglin.com |
Nur diese Variablendatentypen können übergeordnete Elemente sein.
| Datentyp | Beschreibung |
|---|---|
| Array.Array | Ein Container für Arrays. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Array hinzu. |
| Array.Wahr/Falsch | Ein Container für Wahr/Falsch-Werte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ True/False hinzu. |
| Array.Auswahl | Ein Container für Auswahlwerte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Auswahl hinzu. |
| Array.Datum/Uhrzeit | Ein Container für Datums-/Uhrzeitwerte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Datum/Uhrzeit hinzu. |
| Array.Integer | Ein Container für ganzzahlige Werte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Integer hinzu. |
| Array.Object | Ein Container für Objekte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Objekt hinzu, das die Option Untergeordnetes Element hinzufügen anzeigt. |
| Array.Zeichenfolge | Ein Container für Zeichenfolgenwerte. Fügt ein schreibgeschütztes untergeordnetes Element vom Typ Zeichenfolge hinzu. |
| Objekt | Ein Container für andere Datenelemente. Zeigt die Option Untergeordnetes Element hinzufügen an. |
- Array
- Wahr/Falsch
- Auswahl
- Datum/Uhrzeit
- Ganzzahl
- Objekt
- Zeichenfolge
Erweiterte Optionen
Objektvariablen verfügen über erweiterte Optionen zum Speichern und Laden von Datenstrukturen. Mit diesen Optionen können Sie eine an einem Ort definierte Datenstruktur an einem anderen wiederverwenden. Weitere Informationen zu erweiterten Optionen finden Sie unter Datentypen der Aktionsvariablen.
Datenstrukturvorlagen
Mit Datenstrukturvorlagen können Sie Objektvariablen in mehreren Aktionen oder Subflows wiederverwenden. Sie können beispielsweise eine Datenstruktur erstellen, um eine Antwort zu analysieren, und später dieselbe Datenstruktur zum Formatieren einer Anforderung wiederverwenden. Eine Vorlage speichert die Liste der untergeordneten Variablen und ihre Struktur innerhalb eines Objekts. Jede Objektvariable verfügt über eine erweiterte Option, um sie als Vorlage zu speichern.
Wenn Sie eine Vorlage anwenden, erstellen Sie eine Kopie der ursprünglichen Struktur. Alle Änderungen, die Sie nach der Anwendung einer Vorlage vornehmen, wirken sich weder auf die Vorlage noch auf andere Aktionen aus, die die Vorlage verwenden.
Array-Datenpillen
Objekte, die Array-Daten enthalten, erfordern möglicherweise für alle Flow-Logik zur Verarbeitung. Zum Beispiel erfordert ein Benutzerobjekt, das ein Array von E-Mail-Adressen enthält, eine Flow-Logikschleife vom Typ „ Für alle“, um eine Benachrichtigung an jede E-Mail-Adresse zu senden.
Objektdatenpillen
Sie können Aktionen entwerfen, die Objektdatenpillen als Eingabewerte akzeptieren. Sie können beispielsweise eine Benachrichtigungsaktion erstellen, die ein Benutzerobjekt als Eingabe akzeptiert. Wenn das Benutzerobjekt aus Werten für Vorname, Nachname und Adresse besteht, hat die Benachrichtigungsaktion Zugriff auf alle diese Werte. Um eine Aktionseingabe mit einer Objektdatenpille zu konfigurieren, müssen Sie zuvor im Flow ein Objekt erstellen.
Sie können eine Objektdatenpille oder eines ihrer untergeordneten Elemente verwenden, um eine Eingabe zu konfigurieren. Wenn Sie einen Eingabewert mit einer Objektdatenpille konfigurieren, macht Flow Designer alle untergeordneten Elemente des Objekts schreibgeschützt, und die Aktion verwendet die vom Objekt bereitgestellten Werte. Sie können beispielsweise einen Flow erstellen, in dem eine Aktion ein Benutzerobjekt generiert und eine andere Aktion eine Benachrichtigung an den im Objekt angegebenen Benutzer sendet.
Wenn Sie die untergeordneten Elemente eines Objekts konfigurieren, müssen Sie Datenpillen für jedes untergeordnete Element des Objekts manuell bereitstellen. Sie können das Benutzerobjekt beispielsweise manuell mit Datensatzwerten aus einer früheren Aktion konfigurieren.
Skriptunterstützung
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. Weitere Informationen zum Skripting mit komplexen Daten finden Sie unter Skriptunterstützung für komplexe Daten.
Update Set-Support
Update Sets enthalten komplexe Objekte als Teil des Flow, Subflow oder der Aktion, in der sie definiert sind. Bei jeder Änderung am übergeordneten Flow, Subflow oder der übergeordneten Aktion werden die zugehörigen komplexen Daten automatisch erfasst.
Allgemeine Richtlinien
Befolgen Sie diese allgemeinen Richtlinien, um wiederverwendbare und wartbare Datenstrukturen zu erstellen.
- Minimieren Sie die Anzahl der untergeordneten Ebenen in der Hierarchie
- Je mehr untergeordnete Ebenen eine Datenstruktur hat, desto schwieriger ist es, eine Datenvariable anzuzeigen und aus der Hierarchie auszuwählen. Sie können zwar Datenstrukturen mit einer beliebigen Anzahl von untergeordneten Ebenen erstellen, es wird jedoch schwierig, in Datenstrukturen mit mehr als sieben untergeordneten Ebenen zu navigieren und sie zu verstehen. Für eine optimale Benutzer-Experience vermeiden Sie das Erstellen von Datenstrukturen mit so vielen untergeordneten Ebenen, dass Sie horizontal scrollen müssen, um sie anzuzeigen und auszufüllen.
- Erstellen Sie für jede Art von Datensatzdaten ein separates Objekt
- Die meisten Flow Designer Daten sind Datensatzdaten, unabhängig davon, ob sie aus einer Instanz oder einem externen System stammen. Diese Entwurfsmethode stellt sicher, dass Sie wissen, was das Objekt enthält und woher die Daten stammen.
- Datensatzdatenstrukturen neu erstellen
- Überprüfen Sie beim Erstellen von Objekten, die Datensatzdaten empfangen oder übertragen, die Datenbank-Wörterbucheinträge für diese Datensätze, und erstellen Sie übereinstimmende Objektdatenstrukturen. Angenommen, ein Objekt soll Daten aus den Tabellen „Incident“ und „Configuration Item“ enthalten. Sie können ein Zeichenfolgenelement für das Feld Kurzbeschreibung in der Tabelle Incident und ein Array von Zeichenfolgenelementen für das Feld Klasse in der TabelleKonfigurationselement erstellen.
- Erstellen Sie Objekte, um verschiedene Arten von Datensätzen zu kombinieren
- Wenn Sie Informationen aus mehreren Datensatztypen benötigen, erstellen Sie ein Objekt, das alle benötigten Informationen enthält. Sie können das Objekt dann zum Formatieren oder Analysieren von Daten in Flow Designerverwenden.