Datenstromaktionen und Paginierung

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 8 Minuten Lesedauer
  • Senden Sie REST-, SOAP- oder JDBC- Anforderungen von Workflow-Studio an APIs, die einen Stream von Antwortdaten größer als 10 MB oder paginierte Ergebnisse zurückgeben. Parsen Sie Streamdaten in eine Reihe komplexer Objektausgaben, und verwenden Sie die Datenpillen in anderen Aktionen in einem Flow.

    Erstellen Sie beispielsweise eine DatenstromAktion zum Importieren einer großen Menge von Mitarbeiterdaten von einer HR-Drittpartei-Website. Die DatenstromDie Aktion sendet eine REST-Anforderung an die Drittpartei-Site und verarbeitet die Antwort, um Datensätze in der Anwendertabelle [sys_user] auszufüllen.
    Hinweis:
    Datenstromaktionen erfordern ein IntegrationHub-Abonnement. Weitere Informationen finden Sie unter Zeitpläne für Rechtsabteilung – IntegrationHubÜbersicht .

    Vorteile

    Datenstrom Aktionen bieten diese Vorteile.

    • Analysieren und formatieren Sie einen Stream von Antwortdaten, der größer als 10 MB ist.
    • Sendet automatisch mehrere Anforderungen an APIs, die Ergebnisse paginieren, falls zutreffend.
    • Kann in verwendet werden IntegrationHub – Import Und bis Erstellen Sie eine Datenquelle .
    • Ermöglichen Sie Flow-Designern, große Anforderungen ohne komplexe Codierung oder Konfiguration zu verarbeiten.
    • Aktivieren Sie Flow Designer für jedes Objekt in einem Datenstrom mit Flow-Logik vom Typ Für alle verarbeiten. Beispielsweise können Sie eine Datenstrom-Aktion erstellen, die Dokumentdaten von einer Drittanbieterwebsite importiert. Wenn Sie die Aktion einem Flow hinzufügen, fügt Workflow-Studio die Aktion automatisch einem Flow-Logikblock vom Typ Für alle hinzu, sodass Flow-Designer ganz einfach einen Datensatz in ServiceNow für jedes Objekt im Datenstrom erstellen können. Siehe Verwenden Sie einen DatenstromAktion in einem Flow.
    • Aktivieren Sie die Wiederverwendung von Flow-Designern DatenstromAktionen in mehreren Flows, die dieselbe Datenquelle auf mehrere Arten verwenden.

    Datenstromaktion wird ausgeführt

    Es gibt zwei Möglichkeiten, einen auszuführen DatenstromAktion.

    Aus einem Flow
    Sie können jedes Objekt in einem Datenstrom mit Flow-Logik vom Typ Für alle verarbeiten. Beispielsweise können Sie eine Datenstrom-Aktion erstellen, die Dokumentdaten von einer Drittanbieterwebsite importiert. Wenn Sie die Aktion einem Flow hinzufügen, fügt Workflow-Studio die Aktion automatisch einem Flow-Logikblock vom Typ Für alle hinzu, sodass Flow-Designer ganz einfach einen Datensatz in ServiceNow für jedes Objekt im Datenstrom erstellen können. Siehe Verwenden Sie einen DatenstromAktion in einem Flow.
    Aus einem Skript
    Sie können starten DatenstromVerwenden der Methode executeDataStreamAction() in der FlowAPI-Klasse. Weitere Informationen finden Sie unter FlowAPI .

    Aktionsstruktur

    Datenstrom Aktionen folgen einer festgelegten Struktur. Befolgen Sie die Anweisungen, um Schritte zur Aktionsstruktur hinzuzufügen und daraus zu entfernen. Sie können einem keine Schritte manuell hinzufügen DatenstromAktion.

    Abbildung : 1. REST- und SOAP-Datenstromaktionen
    REST- und SOAP-Datenstromaktion.
    Abbildung : 2. JDBC-Datenstromaktion
    JDBC-Datenstromaktion
    Hinweis:
    Durch das Löschen einer Option auf einer Konfigurationsseite wird der Schritt aus der Gliederung Datenstrom entfernt, und alle dem Schritt zugeordneten Daten werden gelöscht.

    Aktionsfehlerauswertung

    Verwenden Fehlerauswertung Um Schrittfehler zu erfassen und das Fehlerverhalten jedes Schritts anzugeben, den Sie einer Datenstromaktion hinzufügen. Sie können auch eigene Fehlerbedingungen erstellen, indem Sie angeben, wann eine Aktion einen Fehlerstatus zurückgibt, sowie die Statuscodes und Nachrichten, die sie zurückgibt.

    Aktionsvorverarbeitung

    Verwenden Sie die Kategorie Aktionsvorverarbeitung, um Verbindungs- und Anmeldeinformationsdetails abzurufen oder ein Vorverarbeitungsskript auszuführen.

    Wählen Sie Aus Rufen Sie die Verbindungsinformationen ab Zum Abrufen von Verbindungs- und Anmeldeinformationsdetails zur Verwendung in Ihrer Aktion. Wenn Sie diese Option auswählen, wird der Schritt „Verbindungsinformationen abrufen“ als erster Schritt in der Aktionsvorverarbeitung hinzugefügt. Weitere Informationen finden Sie unter .

    Wählen Sie Aus Vorverarbeitungsskript aktivieren Um ein Vorverarbeitungsskript auszuführen, bevor die Aktion die erste API-Anforderung sendet. Validieren Sie beispielsweise Aktionseingaben, oder legen Sie Standardwerte fest. Durch Auswahl dieser Option wird der Aktion Datenstrom ein Skriptschritt hinzugefügt. Weitere Informationen finden Sie unter Script step.

    Die Vorverarbeitung wird einmal pro Aktion vor der ersten API-Anforderung ausgeführt.

    Dies ist optional DatenstromAktionskomponente, die entweder auf der Instanz oder auf ausgeführt wird MID-Server.

    Anforderung

    Verwenden Sie die Anforderungskategorie, um zu konfigurieren, wie die Aktion API-Anforderungen sendet. Der Abschnitt „Anforderung“ wird einmal pro Seite mit Ergebnissen ausgeführt. Anforderungskomponenten bieten diese Konfigurationsoptionen.

    Schritt „Paginierungssetup“

    Anforderung Ergebnisse in Stapeln. Sobald eine Seite mit Daten verarbeitet wurde, führt die Aktion Datenstrom den Anforderungsabschnitt erneut aus, um den nächsten Ergebnissatz zurückzugeben.Verwenden Sie den Schritt „Paginierung einrichten“, um die für die API erforderlichen Paginierungsoptionen einzurichten. Konfigurieren Sie den Schritt „Paginierungseinrichtung“ manuell, oder wählen Sie eine vorgefertigte Vorlage aus, um allgemeine Konfigurationen anzuwenden. Wenden Sie beispielsweise die Vorlage Grenzwert/Offset an, um die Anzahl der pro Seite zurückgegebenen Elemente (Grenze) und die Startnummer für das erste Element (Offset) anzugeben. Aktualisieren Sie nach dem Anwenden einer Vorlage die Werte, um sicherzustellen, dass die Konfiguration den API-Anforderungen entspricht.

    Hinweis:
    Für Lizenzierungszwecke zählt jede Anforderung als eine Transaktion, einschließlich jeder Anforderung für die nächste Seite der Ergebnisse.

    Der Wert der reservierten schreibgeschützten GetNextPage Variable bestimmt, ob eine weitere Seite mit Ergebnissen angefordert werden soll. Solange die getNextPage-Variable auf „true“ gesetzt ist und die vorherige Seite Daten enthält, sendet die Aktion weiterhin Anforderungen für die nächste Seite.

    Hinweis:
    Sie müssen den Wert im Skript explizit auf „wahr“ festlegen, andernfalls wird er standardmäßig auf „falsch“ festgelegt.
    Dies ist eine optionale Anforderungskomponente, die nur auf der Instanz ausgeführt wird.
    Hinweis:
    Paginierung gilt nicht für den JDBC-Schritt.
    Skriptschritt

    Führen Sie vor jeder Anforderung für die nächste Seite der Ergebnisse ein Skript aus. Verwenden Sie dieses Skript für die Datenvalidierung und -Transformation, wenn Sie eine paginierte API aufrufen. Generieren Sie beispielsweise eine JSON-Nutzlast für die nächste Seitenanforderung. Durch Auswahl dieser Option wird der Aktion Datenstrom ein Skriptschritt hinzugefügt. Weitere Informationen finden Sie unter Script step.

    Dies ist eine optionale Anforderungskomponente, die entweder auf der -Instanz oder auf ausgeführt wird MID-Server.

    REST- oder SOAP-Schritt

    Senden Sie eine REST- oder SOAP-Anforderung an eine Drittanbieter-API. Wählen Sie ein Datenformat aus, um einen zugeordneten Schritt zu hinzuzufügen DatenstromAktion. Weitere Informationen finden Sie unter REST-Schritt und SOAP-Schritt.

    Dies ist eine obligatorische Anforderungskomponente, die entweder auf der Instanz oder auf ausgeführt wird MID-Server.

    JDBC-Schritt

    Senden Sie eine JDBC-Anforderung an eine Drittpartei-API. Verwenden Sie das Transformationsskript, um Daten zu formatieren und einen zugehörigen Schritt zu hinzuzufügen DatenstromAktion. Weitere Informationen finden Sie unter JDBC-Schritt und JDBC-Schritt testen. Alle Daten werden abgerufen, und Paginierung ist nicht erforderlich.

    Dies ist eine obligatorische Anforderungskomponente, die auf einem ausgeführt wird MID-Server.

    Analyse in REST- und SOAP-Schritten

    Verwenden Sie die Analysekategorie, um zu konfigurieren, wie die Aktion Datenstromelemente in komplexe Datenobjekte trennt. Verwenden Sie den Schritt „Splitter“, um Elemente aus einem XML- oder JSON-Stream zu identifizieren und zu trennen, und verwenden Sie den Schritt „Skriptparser“, um jedes Element in ein komplexes Objekt umzuwandeln. Der Abschnitt „Analyse“ wird einmal pro Element im Stream ausgeführt. Mit können Sie auf Ausgaben aus vorherigen Schritten in Ihrer Datenstromaktion zugreifen fd_Data Objekt, ausgenommen:
    • REST- oder SOAP-Schritt-Antworttext, Stream oder Ausgabe von Fehlermeldung
    • Splitter-Schrittausgaben

    Teilen und Analysieren eines Streams von Anwenderdatensätzen.

    Weitere Informationen zu komplexen Daten finden Sie unter Komplexe Daten . Analysekomponenten bieten diese Konfigurationsoptionen.

    Splitter-Schritt

    Identifizieren den übergeordneten Knoten im Antwortstream, der einem komplexen Objekt zugeordnet werden soll. Identifizieren Sie beispielsweise ein Benutzerelement in einer XML-Nutzlast, um für jeden Benutzer im Antwortstream ein komplexes Objekt zu erstellen.

    Wählen Sie einen Splitter-Typ aus, um wiederholte Elemente in einem XML- oder JSON-Datenstrom zu identifizieren und zu trennen.

    • JSON: Identifiziert Objekte in einem Stream von JSON-Daten. Verwenden Sie einen JSONPath-Ausdruck, um ein JSON-Array zu identifizieren, das wiederholte Daten enthält.
    • XML: Identifiziert Objekte in einem Stream von XML-Daten. Verwenden Sie einen XPath-Ausdruck, um ein XML-Element zu identifizieren, das wiederholte Daten enthält.

    Dies ist eine obligatorische Analysekomponente, die nur auf der Instanz ausgeführt wird.

    Schritt „Skript-Parser“

    Verwenden JavaScript und ServiceNow-APIs zum Zuordnen von Elementen im Antwortstrom zu einer komplexen Objektausgabe, die vom globalen Objekt targetObject dargestellt wird. Ordnen Sie beispielsweise Incident-Datensatzelemente, die im Splitter-Schritt identifiziert wurden, einem komplexen Objekt zu, das Incident-Felder enthält. Wenn der Datenstrom gleichgeordnete Elemente zu dem im Splitter-Schritt identifizierten Element enthält, die keinem komplexen Objekt zugeordnet werden sollen, schließen Sie Bedingungen ein, um diese Elemente auszuschließen.Sie können Elemente im Stream überspringen, indem Sie hinzufügen Ausgaben.Status = „ÜBERSPRINGEN“ Wo immer benötigt wird, zum Skriptabschnitt des Skriptparser-Schritts.

    Dies ist eine obligatorische Analysekomponente, die nur auf der Instanz ausgeführt wird.

    Abbildung : 3. Übersicht über REST- und SOAP-Datenstrom-Aktionen
    Übersicht über die REST- und SOAP-Datenstromaktion.

    Generieren Sie die Analysephase für REST-basierte Datenstromaktionen

    Sie können den Splitter-Schritt, den Skriptparser-Schritt und die Ausgaben für REST-basierte Datenstromaktionen automatisch konfigurieren. Die Funktionalität „REST-Schritt testen“ in REST-basierten Datenstromaktionen führt eine Anforderung an den konfigurierten REST-Endpunkt aus, analysiert die Antwortnutzlast und richtet die Analyse- und Ausgabekomponenten automatisch ein.

    Wenn dem Abschnitt „Anforderung“ einer Datenstromaktion ein REST-Schritt hinzugefügt wird, können Sie die REST-Schritte verwenden REST-Schritt testen Schaltfläche zu Generieren Sie den Abschnitt „Analyse“ und die Ausgaben automatisch . Der Abschnitt „Analysieren“ enthält den Splitter- und den Parser-Schritt. Durch die automatische Generierung wird auch die Ausgabe komplexer Objekte im Abschnitt „Ausgaben“ ausgegeben.

    Skript in JDBC-Schritt umwandeln

    Die JDBC-Datenstromaktion erfordert keine Paginierung. Außerdem sind Splitter- und Parser-Schritte nicht erforderlich.

    Der JDBC-Schritt generiert ein komplexes Objekt für jeden abgerufenen Datensatz. Daher sind die Aktionsvorverarbeitung und das Transformationsskript in der JDBC-Datenstromaktion optional. Bei Verwendung des Transformationsskripts muss der Aktionsdesigner den internen Namen der Tabellenspalten im Transformationsskript angeben.
    Abbildung : 4. Aktionsübersicht für JDBC-Datenstrom
    Übersicht über die Aktion „JDBC-Datenstrom“.

    Datenstromausgaben in SOAP- und REST-Schritten

    Beim Entwerfen von DatenstromAktion müssen Sie eine einzelne Ausgabe vom Typ „Objekt“ oder „dynamisches Objekt“ erstellen. Der Skriptparser-Schritt ordnet Elemente im Stream diesem Objekt mit zu TargetObject Globales Objekt.

    Zur Laufzeit teilt das System den Stream der Antwortdaten gemäß auf und analysiert ihn DatenstromKonfiguration. Jedes Element im Stream ist der komplexen Objektstruktur zugeordnet, die durch den Skriptparser-Schritt und die Objektausgabe definiert wird, was zu einer großen Reihe komplexer Objekte führt. Weitere Informationen zu komplexen Daten finden Sie unter Komplexe Daten .

    Datenstromausgaben im JDBC-Schritt

    Die Ausgabe von JDBC-Schritten ist ein komplexes Objekt-Stream. Gesamte Daten werden nur in einer Anforderung abgerufen.
    Hinweis:
    • Sie können nur Daten abrufen und keine Datensätze mit der JDBC-Datenstromaktion aktualisieren oder löschen.
    • Die Felder, Maximale Zeile Und Maximale Nutzlastgröße (KB) Die im JDBC-Schritt verfügbar sind, sind in der JDBC-Datenstromaktion nicht verfügbar.

    Ausführungsdetails in REST- und SOAP-Schritten

    Zeigen Sie die Konfigurations- und Laufzeitergebnisse für jedes von einem verarbeitete Element an DatenstromAktion. Wählen Sie eine Datensatznummer aus, um die zugehörigen Konfigurations- und Laufzeitdetails anzuzeigen. Standardmäßig enthalten die Ausführungsdetails Anforderungen für die letzten 1000 Elemente. Um die Anzahl der Elemente in den Ausführungsdetails zu ändern, aktualisieren Sie com.snc.process_flow.reporting.datastream.item.lastnSystemeigenschaft.

    Ausführungsdetails für eine Datenstromaktion.

    Datenstromzusammenfassung

    Zeigen Sie eine Übersicht über die Ausführung an, die diese Informationen enthält.

    • Seitenanzahl : Anzahl der Seiten, die von einer paginierten API zurückgegeben werden.
    • Gesamtanzahl der Elemente : Anzahl der Elemente im Antwortstrom, die Ausgaben für komplexe Objekte zugeordnet sind.
    • Fehleranzahl : Anzahl der aufgetretenen Fehler.
    Seitendetails

    Zeigen Sie Laufzeitdaten für jeden Schritt in an DatenstromAktion. Wählen Sie eine Seite aus, um Laufzeitdetails für jede Anforderung an eine paginierte API anzuzeigen. Standardmäßig enthalten die Ausführungsdetails Anforderungen für die letzten fünf Seiten. Um die Anzahl der Anforderungen in den Ausführungsdetails zu ändern, aktualisieren Sie com.snc.process_flow.page.reporting.lastnSystemeigenschaft. Legen Sie den Wert auf fest 0 Um Seiten aus den Ausführungsdetails und zu entfernen -1 Um alle Seiten einzubeziehen.

    Hinweis:
    Das Einbeziehen aller Seiten kann sich auf die Leistung auswirken und wird nicht empfohlen.

    Laufzeitdetails

    Ausführungsdetails im JDBC-Schritt

    Für die JDBC-Datenstromaktion ist keine Erstellung des komplexen Ausgabeobjektschemas erforderlich. Sie können die Abfrage testen und das Abfrageergebnis anzeigen. Weitere Informationen finden Sie unter JDBC-Schritt testen. Konfigurieren Sie MID-Server Eigenschaften mid.jdbc.datastream.max.record.sizeUnd mid.jdbc.datastream.fail.when.attachement.limit.exceededUm Daten gemäß Ihren Anforderungen abzurufen. Siehe MID-Server-Eigenschaften Weitere Informationen finden Sie unter .