Erste Schritte mit dynamischen Ausgaben
Erstellen Sie eine Beispielaktion, die dynamische Ausgaben zur Verwendung in einem Flow erstellt.
Vorbereitungen
Prozedur
-
Erstellen Sie Verbindungs- und Anmeldeinformationsdatensätze für dynamische Ausgaben
Dieser Alias für Verbindungen und Anmeldeinformationen stellt die Basis-URL und den Anwenderaccount bereit, die zum Konfigurieren der REST-Schritte Ihrer Datenerfassungsaktionen erforderlich sind.
-
Erstellen Sie eine Datenerfassungsaktion, um ein Datensatzschema abzurufen
Diese Datenerfassungsaktion konvertiert einen einzelnen Datensatz in ein JSON-Objekt für eine dynamische Datensatzausgabe.
-
Erstellen Sie eine Datenerfassungsaktion, um ein Array von Datensatzschemata abzurufen
Diese Datenerfassungsaktion konvertiert eine Liste von Datensatzdatensätzen in ein JSON-Array von Objekten für eine dynamische Ausgabe von Datensätzen.
-
Erstellen Sie eine anwenderdefinierte Aktion, um dynamische Ausgaben zu testen
Diese anwenderdefinierte Aktion veranschaulicht zwei Arten dynamischer Ausgabedaten. Eine dynamische Ausgabe generiert ein Objekt für einen einzelnen Datensatz. Eine andere dynamische Ausgabe generiert ein Array von Objekten für eine Liste von Datensätzen.
Erstellen Sie Verbindungs- und Anmeldeinformationsdatensätze für dynamische Ausgaben
Erstellen Sie die Aliasse, Verbindungen und Anmeldeinformationen, die REST-Schritte für die Verbindung mit Ihrer lokalen Instanz verwenden.
Vorbereitungen
Erforderliche Rolle: Administrator
Prozedur
- Navigieren zu Alle > Verbindungen und Anmeldeinformationen > Anmeldeinformationenan.
-
Wählen Sie Aus Neu , Wählen Sie aus Anmeldeinformationen Für Standardauthentifizierung , Und geben Sie diese Feldwerte ein.
- Für Name , Eingabetaste Lokaler Administrator .
-
Für Anwendername , Geben Sie einen Anwenderaccount mit Zugriff auf Flow Designer und die REST API ein.
Geben Sie beispielsweise ein Administrator .
- Für Passwort , Geben Sie das Account-Passwort ein.
- Wählen Sie Aus Übermitteln Zum Erstellen des Anmeldeinformationsdatensatzes.
- Navigieren zu Alle > Verbindungen und Anmeldeinformationen > Aliasse für Verbindungen und Anmeldeinformationenan.
-
Wählen Sie Aus Neu Und geben Sie diese Feldwerte ein.
- Für Name Geben Sie die lokale Instanz ein.
- Akzeptieren Sie den Standardwert von HTTP für Verbindungstyp .
- Wählen Sie Aus Übermitteln Dient zum Erstellen des Datensatzes „Alias für Verbindungen und Anmeldeinformationen“.
-
Wählen Sie den von Ihnen erstellten Alias aus.
Wählen Sie beispielsweise aus Lokale Instanz .
-
Wählen Sie in der zugehörigen Liste Verbindungen die Option aus Neu , Und geben Sie diese Feldwerte ein.
- Für Name , Eingabetaste Meine Instanz .
-
Wählen Sie für Anmeldeinformationen den von Ihnen erstellten Anmeldeinformationsdatensatz für die Standardauthentifizierung aus.
Wählen Sie beispielsweise aus Lokaler Administrator Anmeldeinformationen.
-
Geben Sie für die Verbindungs-URL die Basis-URL für Ihre Instanz ein, einschließlich des Schrägstrichs am Ende
Fügen Sie das URL-Präfix https:// hinzu, und fügen Sie am Ende der URL einen Schrägstrich hinzu.Beispiel: https://example.service-now.com/ .
- Wählen Sie Aus Übermitteln Zum Erstellen des HTTP(s)-Verbindungsdatensatzes.
Erstellen Sie eine Datenerfassungsaktion, um ein Datensatzschema abzurufen
Erstellen Sie eine Datenerfassungsaktion, um ein Tabellenschema zu suchen und in ein JSON-Objekt zu konvertieren.
Vorbereitungen
Warum und wann dieser Vorgang ausgeführt wird
- Ein REST-Schritt zum Sammeln von Tabellenschemadaten für eine ausgewählte Tabelle. Der REST-Schritt-Antworttext hat das JSON-Format.
- Ein Skriptschritt zum Transformieren des JSON-Antworttexts des REST-Schritts in ein dynamisches Objekt. Das dynamische Objekt besteht aus JSON-Name-Wert-Paaren, bei denen für jedes Feld in der Tabelle ein Eintrag vorhanden ist.
- Eine Ausgabevariable mit dem Namen
AusgabeVom Typ JSON zum Speichern des dynamischen Objekts.
Prozedur
- Navigieren zu Alle > Prozessautomatisierung > Workflow-Studioan.
- Wählen Sie auf der Homepage aus Aktionen .
-
Wählen Sie Aus Neu Und wählen Sie aus Neue Aktion .
- Auf dem Bildschirm Aktionseigenschaften in Name Feld eingeben ServiceNow-Objektschema abrufen (dynamisch) .
- Wählen Sie Absenden.
-
Wählen Sie in der Aktionsgliederung die Option aus Eingaben .
- Wählen Sie im Header „Aktionseingabe“ die Option aus Eingabe Erstellen .
- In Bezeichnung Und Name Felder eingeben Tabelle .
- Wählen Sie im Feld Type die Option Zeichenfolge aus.
- Um diese Eingabe erforderlich zu machen, schalten Sie um Obligatorisch Schieberegler, damit er aktiv ist.
-
Wählen Sie in der Aktionsgliederung das Symbol Neuen Schritt hinzufügen (
) Unter Eingaben und wählen Sie aus REST-Schritt .
-
Füllen Sie unter dem REST-Schritt-Header die folgenden Felder aus.
Feld Wert Verbindung Verlassen Sie die Verwenden Sie Den Verbindungsalias Option ausgewählt. Verbindungsalias Wählen Sie das Symbol „Neuen Datensatz erstellen“ ( ), um eine neue zu erstellen Erstellen Sie eine HTTP(s)-Verbindung , Oder verwenden Sie eine vorhandene Verbindung für Ihre Instanz. Die Anmeldeinformationen Für die HTTP(s)-Verbindung muss verwenden Anmeldeinformationen für Standardauthentifizierung . Darüber hinaus die Verbindungs-URL Muss die Basis-URL für Ihre Instanz sein, einschließlich des Schrägstrichs am Ende Weitere Informationen zu Verbindungen und Anmeldeinformationen finden Sie unter Erste Schritte mit Verbindungen Und Erste Schritte mit Anmeldeinformationen .
Build-Anforderung Verlassen Sie die Manuell Option ausgewählt. Ressourcenpfad Geben Sie Ein api/now/processflow/table/ Und wählen Sie dann die Datenpillenauswahl ( ). Auswahlvorgang Eingaben > Tabellean. Geben Sie als Nächstes ein /Schema .
HTTP-Methode Geben Sie Ein ABRUFEN Abfrageparameter Wählen Sie das Plus-Symbol ( Zum Hinzufügen eines neuen Abfrageparameters. Dann in Name Feld eingeben Get_choices Und Wahr In Wert Feld.
-
Wählen Sie in der Aktionsgliederung das Symbol Neuen Schritt hinzufügen (
) Unter Ihrem REST-Schritt und wählen Sie aus Skript Schritt.
- Wählen Sie im Abschnitt Eingabevariablen die Option aus Variable Erstellen .
- In Name Feld eingeben Nutzlast .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus REST-Schritt > Antworttextan.
-
Geben Sie in das Feld Skript den folgenden Code ein.
(function execute(inputs, outputs) { var payload = JSON.parse(inputs.payload); var columns = payload.result.data.columns; var schema = columns.map(function(column) { var value = { label: column.label, name: column.name, type: getCOType(column.definition.base_type), }; if (column.definition.type === 'choice') { value.type = 'choice'; value.choices = column.definition.choices; } if (column.definition.base_type === 'GUID') { value.children = [ { label: 'Link', name: 'link', type: 'string' }, { label: 'Value', name: 'value', type: 'string' }, ]; } return value; }); outputs.schema = { data: { type: 'object', children: schema, }, }; function getCOType(type) { if (type === 'GUID') return 'reference'; return type; } })(inputs, outputs); - Wählen Sie im Abschnitt Ausgabevariablen die Option aus Variable Erstellen .
- In Bezeichnung Und Name Felder eingeben Schema .
- In Typ Feld auswählen JSON .
-
Wählen Sie in der Aktionsgliederung die Option aus Ausgaben .
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Ausgabe Erstellen .
- In Bezeichnung Und Name Felder eingeben Ausgabe .
- In Typ Feld auswählen JSON .
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Bearbeitungsmodus Beenden .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus Skriptschritt > Schemaan.
-
Wählen Sie im Aktionsheader die Option aus Speichern Und wählen Sie dann aus Testen Bis Testen Sie die Aktion .
- Geben Sie auf dem Bildschirm Testaktion ein Incident Für Tabelle Eingabe.
- Wählen Sie Test ausführen.
- Überprüfen Sie die Ausführungsdetails der Aktion.
Ihre Datenerfassungsaktion wird erfolgreich ausgeführt, wenn der Laufzeitwert für angegeben istFelderIst ein komplexes Objekt in einem Format, das dem folgenden abgekürzten Beispiel ähnelt.{ "data": { "type": "object", "children": [ { "name": "active", "label": "Active", "type": "boolean" }, { "name": "activity_due", "label": "Activity due", "type": "datetime" }, ... - Wählen Sie im Aktionsheader die Option aus Veröffentlichen Um zu erstellen Get ServiceNow Object Schema (Dynamic)Aktion, die für andere Flows und Aktionen im globalen Bereich verfügbar ist.
Erstellen Sie eine Datenerfassungsaktion, um ein Array von Datensatzschemata abzurufen
Erstellen Sie eine Datenerfassungsaktion, um ein Array von Objekten aus einer Liste von Datensätzen zu generieren.
Vorbereitungen
Warum und wann dieser Vorgang ausgeführt wird
- Ein REST-Schritt zum Sammeln von Tabellenschemadaten für eine ausgewählte Tabelle. Der REST-Schritt-Antworttext hat das JSON-Format.
- Ein Skriptschritt zum Transformieren des JSON-Antworttexts des REST-Schritts in ein dynamisches Objekt. Das dynamische Objekt besteht aus einem JSON-Array von Objekten, wobei jeder Quelldatensatz in ein Objekt des Arrays konvertiert wird.
- Eine Ausgabevariable mit dem Namen
AusgabeVom Typ JSON zum Speichern des dynamischen Objekts.
Prozedur
- Navigieren zu Alle > Prozessautomatisierung > Workflow-Studioan.
- Wählen Sie auf der Homepage aus Aktionen .
-
Wählen Sie Aus Neu Und wählen Sie aus Neue Aktion .
- Auf dem Bildschirm Aktionseigenschaften in Name Feld eingeben ServiceNow Array.Object-Schema abrufen (dynamisch) .
- Wählen Sie Absenden.
-
Wählen Sie in der Aktionsgliederung die Option aus Eingaben .
- Wählen Sie im Header „Aktionseingabe“ die Option aus Eingabe Erstellen .
- In Bezeichnung Und Name Felder eingeben Tabelle .
- Wählen Sie im Feld Type die Option Zeichenfolge aus.
- Um die Eingabe erforderlich zu machen, schalten Sie um Obligatorisch Schieberegler, damit er aktiv ist.
-
Wählen Sie in der Aktionsgliederung das Symbol Neuen Schritt hinzufügen (
) Unter Eingaben und wählen Sie aus REST Schritt.
-
Füllen Sie unter dem REST-Schritt-Header die folgenden Felder aus.
Feld Wert Verbindung Verlassen Verwenden Sie Den Verbindungsalias Ausgewählt. Verbindungsalias Wählen Sie das Symbol „Neuen Datensatz erstellen“ ( ), um eine neue zu erstellen Erstellen Sie eine HTTP(s)-Verbindung , Oder verwenden Sie eine vorhandene Verbindung für Ihre Instanz. Die Anmeldeinformationen Für die HTTP(s)-Verbindung muss verwenden Anmeldeinformationen für Standardauthentifizierung . Darüber hinaus die Verbindungs-URL Muss die Basis-URL für Ihre Instanz sein, einschließlich des Schrägstrichs am Ende
Build-Anforderung Verlassen Manuell Ausgewählt. Ressourcenpfad Geben Sie Ein api/now/processflow/table/ Und wählen Sie dann die Datenpillenauswahl ( ). Auswahlvorgang Eingaben > Tabellean. Geben Sie abschließend ein /Schema
HTTP-Methode Geben Sie Ein ABRUFEN Abfrageparameter Wählen Sie das Plus-Symbol ( Zum Hinzufügen eines neuen Abfrageparameters. Dann in Name Feld eingeben Get_choices Und Wahr In Wert Feld.
-
Wählen Sie in der Aktionsstruktur die Option aus Fügen Sie einen neuen Schritt hinzu (
) Symbol unter Ihrem REST-Schritt, und wählen Sie aus Skript Schritt.
- Wählen Sie im Abschnitt Eingabevariablen die Option aus Variable Erstellen .
- In Name Feld eingeben Nutzlast .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus REST-Schritt > Antworttextan.
-
Geben Sie in das Feld Skript den folgenden Code ein.
(function execute(inputs, outputs) { var payload = JSON.parse(inputs.payload); var columns = payload.result.data.columns; var schema = columns.map(function(column) { var value = { label: column.label, name: column.name, type: getCOType(column.definition.base_type), }; if (column.definition.type === 'choice') { value.type = 'choice'; value.choices = column.definition.choices; } return value; }); outputs.schema = { data: { type: 'array.object', attributes: { child_type: 'object', }, children: schema, }, }; function getCOType(type) { if (type === 'GUID') return 'string'; return type; } })(inputs, outputs); - Wählen Sie im Abschnitt Ausgabevariablen die Option aus Variable Erstellen .
- In Bezeichnung Und Name Felder eingeben Schema .
- In Typ Feld auswählen JSON .
-
Wählen Sie in der Aktionsgliederung die Option aus Ausgaben .
- Wählen Sie im Header der Aktionsausgabe die Option aus Ausgabe Erstellen .
- Geben Sie Ein Ausgabe In Bezeichnung Feld und Name Feld.
- Wählen Sie Aus JSON Für Typ Feld.
- Wählen Sie Aus Bearbeitungsmodus Beenden .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus Skriptschritt > Schemaan.
-
Wählen Sie im Aktionsheader die Option aus Speichern Und wählen Sie dann aus Testen Bis Testen Sie die Aktion .
- Auf dem Bildschirm Testaktion in Tabelle Feld eingeben Incident .
- Wählen Sie Test ausführen.
-
Überprüfen Sie die Ausführungsdetails der Aktion.
Ihre Datenerfassungsaktion wird erfolgreich ausgeführt, wenn der Laufzeitwert für angegeben ist
FelderDie Ausgabe ist ein komplexes Objekt, das ein Array von Schlüssel-Wert-Paaren für enthältBezeichnung,Name, UndWertWie im folgenden abgekürzten Beispiel gezeigt.{ "data": { "type": "array.object", "children": [ { "name": "active", "label": "Active", "type": "boolean" }, { "name": "activity_due", "label": "Activity due", "type": "datetime" }, ...
- Wählen Sie im Aktionsheader die Option aus Veröffentlichen Um zu erstellen Get ServiceNow Array.Object Schema (Dynamic)Aktion, die für andere Aktionen im globalen Bereich verfügbar ist.
Erstellen Sie eine anwenderdefinierte Aktion, um dynamische Ausgaben zu testen
Erstellen Sie eine Beispielaktion, um dynamisch zwei Aktionsausgaben zu generieren. Datensatz Und Datensätze Welche dynamisch aktualisiert werden, wenn der Wert für Tabelle Eingabeänderungen.
Vorbereitungen
Warum und wann dieser Vorgang ausgeführt wird
Diese anwenderdefinierte Aktion verwendet zwei Datenerfassungsaktionen, um dynamische Ausgaben auszufüllen.
Prozedur
-
Wählen Sie im Hauptheader das Symbol Flow, Subflow oder Aktion erstellen (
) Und wählen Sie aus Aktion .
- Im modalen Dialogfeld „Aktionseigenschaften“ in Name Feld eingeben ServiceNow-Datensätze abrufen (dynamisch) .
- Wählen Sie Absenden.
-
Wählen Sie in der Aktionsgliederung die Option aus Eingaben .
- Wählen Sie im Header „Aktionseingabe“ die Option aus Eingabe Erstellen .
- In Bezeichnung Und Name Felder eingeben Tabelle .
- In Typ Feld auswählen Dynamische Auswahl .
- Um die Eingabe erforderlich zu machen, schalten Sie um Obligatorisch Schieberegler, damit er aktiv ist.
-
Wählen Sie das Symbol Erweiterte Eingaben ein/aus (
Um die erweiterten Optionen für anzuzeigen
TabelleEingabe. - In Standardwert Feld eingeben Incident .
- Unter dynamische Optionen in Aktion Feld auswählen ServiceNow-Tabellen abrufen – dynamisch .
- Wählen Sie Aus Eingabe Erstellen Um eine weitere Aktionseingabe zu erstellen.
- In Bezeichnung Und Name Felder eingeben Anzahl der Datensätze .
- In Typ Feld auswählen Ganzzahl .
- Um die Eingabe erforderlich zu machen, schalten Sie um Obligatorisch Schieberegler, damit er aktiv ist.
-
Wählen Sie das Symbol Erweiterte Eingaben ein/aus (
Um die erweiterten Optionen für anzuzeigen
TabelleEingabe. - In Standardwert Feld eingeben 3 .
-
Wählen Sie in der Aktionsgliederung das Symbol Neuen Schritt hinzufügen (
) Unter Eingaben und wählen Sie aus REST Schritt.
-
Füllen Sie unter dem REST-Schritt-Header die folgenden Felder aus.
Feld Wert Verbindung Verlassen Verwenden Sie Den Verbindungsalias Ausgewählt. Verbindungsalias Wählen Sie das Symbol „Neuen Datensatz erstellen“ ( ), um eine neue zu erstellen Erstellen Sie eine HTTP(s)-Verbindung , Oder verwenden Sie eine vorhandene Verbindung für Ihre Instanz. Die Anmeldeinformationen Für die HTTP(s)-Verbindung muss verwenden Anmeldeinformationen für Standardauthentifizierung . Darüber hinaus die Verbindungs-URL Muss die Basis-URL für Ihre Instanz sein, einschließlich des Schrägstrichs am Ende
Build-Anforderung Verlassen Manuell Ausgewählt Ressourcenpfad Geben Sie Ein api/now/table/ Und wählen Sie dann die Datenpillenauswahl ( ). Auswahlvorgang Eingaben > Tabellean.
HTTP-Methode Geben Sie Ein ABRUFEN Abfrageparameter Wählen Sie das Plus-Symbol ( Zum Hinzufügen eines neuen Abfrageparameters. Geben Sie dann ein Sysparm_limit In Name Feld. Neben Wert Feld die Datenpillenauswahl auswählen (
) Und dann auswählen Eingaben > numberOfRecordsan.
-
Wählen Sie in der Aktionsgliederung das Symbol Neuen Schritt hinzufügen (
) Unter Eingaben Und wählen Sie aus Skript Schritt.
- Wählen Sie im Abschnitt Eingabevariablen die Option aus Variable Erstellen .
- In Name Feld eingeben Nutzlast .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus REST-Schritt > Antworttextan.
-
Geben Sie in das Feld Skript den folgenden Code ein.
(function execute(inputs, outputs) { var response = JSON.parse(inputs.payload); var records = response.result; outputs.record = records[0]; outputs.records = JSON.stringify(records); })(inputs, outputs); - Wählen Sie im Abschnitt Ausgabevariablen die Option aus Variable Erstellen .
- In Bezeichnung Und Name Felder eingeben Datensatz .
- Wählen Sie Aus JSON Für Typ Feld.
- Schalten Sie ein/aus Obligatorisch Schieberegler, damit er aktiv ist.
- Wählen Sie Aus Variable Erstellen Dient zum Erstellen einer weiteren Ausgabevariable für den Skriptschritt.
- In Bezeichnung Und Name Felder eingeben Datensätze .
- In Typ Feld auswählen JSON .
- Um die Eingabe erforderlich zu machen, schalten Sie um Obligatorisch Schieberegler, damit er aktiv ist.
-
Wählen Sie in der Aktionsgliederung die Option aus Ausgaben .
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Ausgabe Erstellen .
- In Bezeichnung Und Name Felder eingeben Datensätze .
- In Typ Feld auswählen Dynamisches Objekt .
-
Wählen Sie das Symbol Erweiterte Eingaben ein/aus (
Um die erweiterten Optionen für anzuzeigen
DatensätzeAusgabe. - Wählen Sie unter dynamische Optionen die Option aus ServiceNow Array.Object-Schema abrufen (dynamisch) Als Aktion .
- Um die Tabelleneingabe von einer anderen Eingabe abhängig zu machen, schalten Sie um Hängt Von Einer Anderen Eingabe Ab Schieberegler, um sie zu aktivieren.
- In Tabelle E Feld auswählen Tabelle .
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Bearbeitungsmodus Beenden .
-
Neben Wert Feld die Datenpillenauswahl auswählen (
) Und wählen Sie aus Skriptschritt > Datensätzean.
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Bearbeiten Sie Ausgaben > Ausgabe erstellen Um eine weitere Aktionsausgabe zu erstellen.
- In Bezeichnung Und Name Felder eingeben Datensatz .
- In Typ Feld auswählen Dynamisches Objekt .
-
Wählen Sie das Symbol Erweiterte Eingaben ein/aus (
Um die erweiterten Optionen für anzuzeigen
DatensatzAusgabe. - Unter dynamische Optionen in Aktion Feld auswählen ServiceNow-Objektschema abrufen (dynamisch) .
- Um die Tabelleneingabe von einer anderen Eingabe abhängig zu machen, schalten Sie um Hängt Von Einer Anderen Eingabe Ab Schieberegler, um sie zu aktivieren.
- In Tabelle Feld auswählen Tabelle .
- Wählen Sie im Header „Aktionsausgabe“ die Option aus Bearbeitungsmodus Beenden .
-
Für Wert , Wählen Sie die Datenpillenauswahl (
) Und wählen Sie aus Skriptschritt > recordan.
-
Wählen Sie im Aktionsheader die Option aus Speichern Und wählen Sie dann aus Testen Bis Testen Sie die Aktion .
- Wählen Sie im Bildschirm Testaktion einen beliebigen dynamisch generierten Auswahlwert für aus Tabelle Eingabe.
- Wählen Sie Test ausführen.
-
Überprüfen Sie die Ausführungsdetails der Aktion.
Ihre Aktion wird erfolgreich ausgeführt, wenn der Laufzeitwert für angegeben ist
DatensatzIst ein ordnungsgemäß formatiertes komplexes Objekt und der Laufzeitwert fürDatensätzeIst ein ordnungsgemäß formatiertes komplexes Objekt-Array.
- Wählen Sie im Aktionsheader die Option aus Veröffentlichen Um zu erstellen Get ServiceNow Records (Dynamic)Aktion, die für Flows innerhalb des globalen Bereichs verfügbar ist.
Ergebnisse
Sie können jetzt hinzufügen Get ServiceNow Records (Dynamic)Aktion zu einem Flow. Diese Beispielaktion generiert dynamisch zwei Aktionsausgaben: Datensatz Und Datensätze , Auf die als Datenpillen im Datenbereich zugegriffen werden kann. Die Datenpillen werden dynamisch aktualisiert, wenn der Wert für Tabelle Eingabeänderungen.