servicenow

ServiceNow verstehen, Teil 3 : Let it SNow

Ishita Datta · 17. November 2022

Dieser Beitrag wurde aus dem englischen Original übersetzt.

Hallo und willkommen zurück zum dritten Teil der Blogserie Understanding ServiceNow. Wir stecken mitten im Now-ember, und es ist Zeit, sich in der Kälte einzumummeln und die neue Jahreszeit zu begrüßen. Im vorherigen Teil der Blogserie haben wir einige Grundlagen von ServiceNow behandelt, unter anderem wie man startet und durch die Now Platform navigiert.

In diesem Teil sehen wir uns eine bestimmte Anwendung in ServiceNow an: den Integration Hub.

Was ist der Integration Hub

Der Integration Hub dient dazu, Aufgaben und Prozesse in ServiceNow zu automatisieren. Das geschieht über den Flow Designer oder durch das Erstellen eigener Integrationen. Diese Integrationen sind wiederverwendbar und fungieren als Einheiten aus No-Code-Transformationslogik, die sich überall anwenden lassen, auf jede Anwendung und jede Tabelle in der Now Platform. Diese Integrationen können auch Drittsysteme einbeziehen, die sich aus dem Integration Hub heraus über externe APIs aufrufen lassen. Solche APIs lassen sich über den Schritt Action Designer im Integration Hub selbst gestalten.

Das Datenvolumen wird zudem über Data Stream Actions gesteuert. Das sind Actions, die es erlauben, Daten größer als 10 MB zu parsen. Mit Listener Events, die Pagination beherrschen, bieten die ein- und ausgehenden Aktivitäten von und zu ServiceNow eine Vielzahl von Anpassungsmöglichkeiten.

Komponenten des Flow Designer

Mit Hilfe des Flow Designer können Sie Prozesse in einer bestimmten Instanz automatisieren.

Ein Flow in ServiceNow ist eine Menge von Actions, die nacheinander ausgeführt werden. Ein Flow besteht aus Actions und Triggern.

Ein Subflow ist eine Art wiederverwendbarer Flow, der aus einem anderen Flow, einem Skript oder einem anderen Subflow heraus ausgelöst wird. Er sorgt für Modularität, wenn ein Flow sehr komplex ist. So lässt sich ein Stück Logik unabhängig verwalten und beim Ergänzen von Automatisierungslogik gezielter anpassen. Diese zusätzliche Anpassbarkeit entsteht dadurch, dass sich während eines Transformationsprozesses in Bezug auf den übergeordneten Flow spezifische Inputs oder Outputs ergänzen lassen.

Ein Trigger in einem Flow definiert, wann ein Flow zur Ausführung kommt. Diese Trigger können unterschiedlicher Art sein. Sie können einen Record Trigger nutzen, bei dem der Flow beispielsweise jedes Mal startet, wenn ein Datensatz aktualisiert wird. Alternativ können Sie auch einen Date Trigger oder einen Application Trigger verwenden.

Actions definieren die Arbeit, die ein Flow verrichtet. Diese Actions können mitgeliefert oder selbst gestaltet sein. Während der Flow läuft, erzeugen die ersten Actions Ausgabewerte, die schließlich zu Eingabedaten für die später im Flow folgenden Actions werden.

Navigation im Flow Designer

Lizenzierung des Integration Hub

Die Lizenzierung des Integration Hub erfolgt in ServiceNow abonnementbasiert.

Das kostenlose Abonnement für den Integration Hub ist der Integration Hub Starter. Für den Zugriff auf die Data Stream Actions benötigen Sie den ServiceNow Integration Hub Enterprise Pack Installer. Diese Installer sind Plug-ins, die sich über den ServiceNow Marketplace anfordern lassen.

Bauen wir einen einfachen Flow

Wir erstellen mit dem Flow Designer einen Flow, um eine Genehmigung für ein Issue einzuholen.

Voraussetzungen

Um unseren Flow auf einer Tabelle auszuführen, müssen wir eine Tabelle anlegen. Sie können sie überall erstellen, im App Engine Studio oder im System Applications Studio. Die Tabelle, die wir verwenden, heißt Access Monitor.

Die für die Tabelle benötigten Felder sind:

SpaltenbezeichnungTypWeitere Details
CategoryChoiceChoice List Specification: Dropdown ohne die Option "None" (ein Standardwert muss angegeben werden)
Choice Label: Choice Value
Big : big
Small : small
Due DateDate
LocationReference**Reference:** Location [cmn_location]
Opened ByReferenceReference: User [sys_user]
PriorityChoiceChoice List Specification: Dropdown ohne die Option "None" (ein Standardwert muss angegeben werden)
Choice Label: Choice Value
Critical: critical
Moderate: moderate
Low: low
Short DescriptionStringMax length: 40
StateChoiceChoice List Specification: Dropdown ohne die Option "None" (ein Standardwert muss angegeben werden)
Choice Label: Choice Value
Approval: approval
Completed: completed
New: new
Under Progress: under progress

Ihre Tabelle sollte in der List View in etwa so aussehen:

Spalten und Felder der Tabelle Access Monitor

Schritt 1: Einen neuen Flow anlegen

💡 Die für die Arbeit mit dem Flow Designer benötigten Rollen sind admin, flow_designer oder delegated_developer mit gewährtem Zugriff auf den Flow Designer in den Entwicklerberechtigungen der erstellten App. Stellen Sie sicher, dass Sie eine dieser Rollen haben.

Zuerst navigieren wir zum Flow Designer. Gehen Sie zu Application Navigator > Flow Designer.

Legen Sie im Flow Designer einen neuen Flow an. Anschließend werden Sie aufgefordert, die Eigenschaften des Flows einzugeben, wie unten dargestellt.

Konfigurieren Sie hier die Flow-Eigenschaften

Flow name : Issue Approvals

Description : This flow will be used to update the states based on approvals for the Access Monitor.

Protection : (optional)

Run as : System User

Klicken Sie auf Submit.

Schritt 2: Einen Trigger setzen

Wir wollen diesen Flow immer dann ausführen, wenn ein Datensatz in der Tabelle Access Monitor aktualisiert wird, unter der Bedingung, dass der State des neu aktualisierten Datensatzes auf Approval steht.

Für die Konfiguration des Triggers wählen wir zunächst die Option Updated, wie im Bild unten gezeigt.

Record Trigger Update

Als Nächstes wählen wir unsere Tabelle aus dem Dropdown und fügen unsere Bedingung unter Advanced Options hinzu. Ihr Trigger sollte in etwa so aussehen:

Trigger-Konfiguration

Die Kriterien für das Auslösen des Flows sind nicht immer erfüllt. Manchmal kann es auch zu einer Ablehnung kommen, wenn der State nicht auf Approval steht. Aus diesem Grund setzen wir den Wert von Run Trigger auf Only if not currently running.

Klicken Sie nach der Konfiguration auf Done.

Schritt 3: Data Pills betrachten

Wenn Sie sich jetzt das Data-Panel unseres Flows ansehen, fällt Ihnen auf, dass unter der Überschrift Trigger einige Werte stehen. Diese Werte heißen Data Pills. Sie fungieren als dynamische Daten, die von unseren Actions genutzt werden.

Wiederverwendbare Data Pills, die wir aus unserem Trigger nutzen können

Schritt 4: Eine Action konfigurieren

Nachdem wir den Trigger für den Flow konfiguriert haben, fügen wir einige Actions hinzu, die ausgeführt werden, wenn die Bedingung des Triggers erfüllt ist. Die erste Action, die wir hinzufügen, ist eine Genehmigungsanfrage. Die Person, die für das Anlegen des Issues verantwortlich ist (gepflegt im Feld Opened By der Tabelle Access Monitor), muss das Issue genehmigen oder ablehnen.

Um das umzusetzen, klicken wir auf die Plus-Schaltfläche für Action. Gehen Sie in ServiceNow core und wählen Sie Ask for Approval.

Action Ask For Approval in ServiceNow Core

Nach der Auswahl sollte auf Ihrem Bildschirm ein Formular zur Konfiguration der Action erscheinen. Ziehen Sie die Data Pill des Access-Monitor-Datensatzes per Drag-and-drop in das Feld Record des Formulars. Außerdem konfigurieren wir unsere Regeln für diese Action mit Hilfe des Data Pill Picker, wie unten gezeigt.

Ansehen: ezgif-4-bbd9676b03.mp4

Data Pills für die Action Ask For Approval

Klicken Sie nach der Konfiguration der Action auf done.

Schritt 5: Eine If/Else-Blocklogik erstellen

Als Nächstes ergänzen wir einige Schritte dazu, welche Aufgaben nach der Genehmigungsanfrage ausgeführt werden sollen. Wenn die Genehmigungsanfrage verschickt wurde und die Person das Issue genehmigt hat, wollen wir das Feld State in unserem Access Monitor auf "Completed" setzen. Wurde die Genehmigung abgelehnt, soll das Feld State auf "Under Progress" gesetzt werden, damit der Datensatz zur Nachverfolgung zurück in die Warteschlange des Technikers geht.

Dafür fügen wir einen If/Else-Block hinzu, der so funktionieren soll:

if approval state = approved
Update record 'state' field to 'completed'
else 
Update record 'state' field to 'under progress'

Konfigurieren Sie die If-Bedingung wie unten gezeigt.

Ansehen: ezgif-4-3aeccda5b3.mp4

Konfiguration des If-Blocks

Im Zweig des If-Blocks führen wir die Update-Operation aus, die wie unten gezeigt konfiguriert werden sollte:

Update auf dem Datensatz Access Monitor

Für das Feld Record in diesem Formular können Sie die Access-Monitor-Data-Pill verwenden (siehe Schritt 3). Klicken Sie auf Done.

Als Nächstes ergänzen wir unseren Else-Block und die darauf folgende Update-Action.

Klicken Sie für den Else-Block auf das Plus-Symbol außerhalb des If-Blocks > wählen Sie Flow Logic > wählen Sie im Dropdown die Option Else. Legen Sie unter dem Else-Block eine neue Update-Action an und konfigurieren Sie sie wie unten gezeigt.

Konfiguration des Else-Blocks

Schritt 6: Unseren Flow testen

Unser fertiger Flow sollte so aussehen:

Vollständiger Flow Issue Approvals

Um den Flow zu testen, klicken Sie oben rechts auf der Arbeitsfläche auf die Schaltfläche Test. Es sollte ein Fenster wie unten gezeigt erscheinen:

Pop-up der Testausführung

Die Funktion Test im Flow Designer umgeht die Trigger-Bedingung des Flows und erlaubt uns, die Flow-Logik für einen bestimmten Datensatz in unserer Tabelle auszuprobieren. Die Laufzeitfelder der Testausführung lassen sich ebenfalls an Ihre Anforderungen anpassen.

Sobald die Testausführung abgeschlossen ist, werden die Ausführungsprotokolle wie unten dargestellt angezeigt:

Testausführung im Status Waiting.

Nun müssen wir die Anfrage genehmigen oder ablehnen. Das geht über All > Self-service > My Approvals (nur für den Nutzer zugänglich, der das Issue angelegt hat).

Genehmigungsdatensatz in My Approvals

Beim Klick auf die Schaltfläche Approve wechselt der Approval State auf Approved, wie unten gezeigt.

My Approvals

Wenn Sie nun zur Flow-Ausführung zurückkehren und die Ergebnisse aktualisieren, ist der Testlauf nicht Completed.

Testausführung im Status Completed, nachdem der Issue-Owner genehmigt hat

Auch der State-Wert des Datensatzes wird auf "Completed" aktualisiert.

State des Datensatzes Access Monitor nach der Genehmigung auf "Completed" aktualisiert

Fazit

Herzlichen Glückwunsch zu Ihrem ersten Flow im Flow Designer! Der Flow Designer ist eine der nützlichsten Komponenten des Integration Hub. Mit Flows können Sie mehrere Transformationen durchführen, Benachrichtigungen auslösen und E-Mails versenden. Diese Flows lassen sich auch mit Drittanbieter-APIs nutzen. Sie machen Workflow Management zu einem vollständig automatisierten Prozess, sodass manuelles Eingreifen nur noch zu Tracking- und Monitoring-Zwecken nötig ist.

In unserem nächsten und letzten Beitrag dieser Serie sehen wir uns an, wie wir unsere Instanz mit diesen Drittanbieter-APIs verbinden und weitere Funktionen des Integration Hub nutzen. Bis dahin: Genießen Sie den Schnee, denn Now ist der Winter da. ❄️

Ähnliche Beiträge

Das könnte Sie auch interessieren

Aktualisieren Sie Ihre Unternehmensintegration.

Mit zunehmender Effizienz bei Digitalisierung und Datenfluss erwarten Sie einen höheren Unternehmenswert und eine bessere Wettbewerbsfähigkeit.