Erstellen von Flows
Workflow-Studio ist der standardmäßige Now Platform Prozessautomatisierungs-Generator, der zum Erstellen von Flows verwendet wird. Workflow-Studio ersetzt den Editor Workflow.
Flows bestehen aus einem Auslöser und einer Folge von Aktionen und Flow-Logik. Wenn Sie einem Flow Aktionen und Flow-Logik hinzufügen, werden die gesammelten oder erstellten Daten im Datenbereich angezeigt, den Sie in anderen Aktionen und in anderer Flow-Logik verwenden können.
Das Erstellen und Verwalten von Flows setzt voraus, dass Sie mit den Now Platform -Tabellen und -Feldern vertraut sind, die von der Anwendung oder dem Prozess verwendet werden. Prozessanalysten können Flows mit verfügbaren Aktionen und Flow-Logik erstellen oder einen vorhandenen Flow kopieren, um ihn als Vorlage zu verwenden.
Aktionslimit
Standardmäßig können Abläufe nicht mehr als 50 Aktionen umfassen. Um das Standardverhalten zu ändern, erhöhen Sie den Wert der Systemeigenschaft sn_flow_designer.max_actions. Berücksichtigen Sie jedoch die Auswirkungen, die ein großer Ablauf auf die Leistung Ihrer Instanz haben kann.
Fehlende Aktionen
Wenn ein Administrator Ihren Flow aus einem Update Set hinzugefügt hat, fehlen möglicherweise einige Aktionen in Ihrem Flow. Dies geschieht normalerweise, wenn in Ihrer Instanz nicht die entsprechenden IntegrationHub -Spokes installiert sind. Weitere Informationen zur Installation der Spokes, die Sie benötigen, damit diese Aktionen angezeigt werden, finden Sie unter Spokes.
Menü „Weitere Aktionen“
Wählen Sie das Symbol „Weitere Aktionen “ (Symbol „ “ ), um auf zusätzliche Optionen für Ihren Flow zuzugreifen.
- Phasen
- Greifen Sie auf die Phasen für einen Ablauf zu.
- Flow-Katalogvariablen verwalten
- Verwalten Sie die Katalogvariablen, die für die von Service Catalog ausgelösten Abläufe verfügbar sind.
- Flow-Variablen
- Erstellen Sie Flow-Variablen, um Daten in einem Flow festzulegen und abzurufen.
- Flow kopieren
- Erstellen Sie eine Kopie des offenen Ablaufs in einer Anwendung, die Sie angeben.
- Flow-Einstellungen
- Aktivieren oder deaktivieren Sie die Optionen Entwurfsaktionen anzeigen, Ausgelöste Flowsanzeigen, Store-Spokes anzeigenund Inline-Skript-Umschalter anzeigen.
- Code-Fragment erstellen
- Generieren Sie einen Codeausschnitt, um einen bestimmten Ablauf, Unterablauf oder eine bestimmte Aktion aufzurufen.
- Sicherheit verwalten
- Aktivieren oder deaktivieren Sie die Option Von Client-API aufrufbar.
- Ändern Sie den Standard-Flow-Titel
- Ändern Sie den Standardtitel für Ihren Flow, indem Sie formatierten oder dynamischen Text hinzufügen. Weitere Informationen finden Sie unter Titel in natürlicher Sprache erstellen.
Abläufe testen
Sie können einen Flow direkt über die Schnittstelle Workflow-Studio testen. Bei jedem Test wird Ihr Flow so ausgeführt, als ob die Auslöserbedingungen erfüllt wären. Wenn der Flow über Datensatzauslöser verfügt, können Sie den Datensatz angeben, der für Ihren Test verwendet werden soll. Verwenden Sie nach der Ausführung des Flow die Flow-Ausführungsdetails, um zu überprüfen, ob Ihr Flow ordnungsgemäß ausgeführt wird.
Flow-Ausführungsdetails
Jedes Mal, wenn Sie einen Flow testen, generiert das System Flow-Ausführungsdatensätze, Protokollnachrichten und Berichte. Der Ablaufkontext ist ein verwandter Datensatz, der den aktuellen Status und die Laufzeitwerte des Ablaufs enthält. Das System generiert bei jeder Ausführung eines Ablaufs einen Kontextdatensatz.
Optional können Sie das System so konfigurieren, dass Ausführungsdetails jedes Mal generiert werden, wenn ein Flow ausgeführt wird, nicht nur während des Tests. Weitere Informationen finden Sie unter Aktivieren Sie das Flow-Reporting.
Flow-Eigenschaften
Die Flow-Eigenschaften enthalten Informationen zu Ihrem Flow. Wählen Sie im Hauptheader Eigenschaften aus, um die Eigenschaften Ihres Flows anzuzeigen oder zu bearbeiten.
| Eigenschaft | Beschreibung |
|---|---|
| Name | Geben Sie einen eindeutigen Namen für den Ablauf ein. |
| Schutz | Legen Sie fest, ob der Flow schreibgeschützt ist, indem Sie Keine oder Schreibgeschützt auswählen |
| Anwendung | Wählen Sie eine Anwendung für den Ablauf aus. Diese Eigenschaft wird festgelegt, wenn Sie den Ablauf erstellen, und kann anschließend nicht mehr geändert werden. |
| Beschreibung | Geben Sie eine Beschreibung für den Ablauf ein. |
| Ausführen als | Option, die Sie auswählen können, um anzugeben, dass der Flow als Systembenutzer oder als Anwender, der die Sitzung initiiert, ausgeführt wird. Wählen Sie den Anwender aus, der die Sitzungsoption initiiert, wenn Aktualisierungen vom Anwender stammen sollen, der den Flow ausgelöst hat. Verwenden Sie diese Option beispielsweise, wenn die Kommentare zum Incident-Datensatz vom aktuellen Benutzer oder die Genehmigungs-E-Mails vom Genehmiger stammen sollen. Einstellungen für die Option Ausführen als in einem Flow gelten nicht für untergeordnete Subflows. Um einen Flow zu erstellen, der mit einem persönlichen OAuth-Token ausgeführt werden kann, wählen Sie den Benutzer aus, der die Sitzungsoption initiiert. Wenn der Benutzer, der den Flow ausführt, über ein persönliches OAuth-Token verfügt, wird der Flow mit diesem Token ausgeführt. Weitere Informationen zum Erstellen eines persönlichen OAuth-Tokens finden Sie unter OAuth 2.0-Anmeldeinformationen. |
| Mit Rollen ausführen | Rollen, mit denen der Flow ausgeführt wird. Diese Option ist nur verfügbar, wenn Ausführen als auf den Benutzer festgelegt ist, der die Sitzung initiiert. |
Flows werden gedruckt
Workflow-Studio unterstützt das mehrseitige Drucken von Flows, Subflows, Aktionen und Flow-Ausführungsdetails. Eine Liste der unterstützten Browser finden Sie unter Browser-Unterstützung.
Rollen
Um auf einen Flows Benutzer zuzugreifen, müssen Sie über die Rollen flow_designer oder admin verfügen.
Allgemeine Leitlinien
Flows sollten kurze, modulare und wiederverwendbare Arbeitssammlungen sein. Wenn die Ausführung länger als eine Stunde dauert, ist sie wahrscheinlich zu lang und kann effizienter sein.
Alle allgemeinen Richtlinien, die für Flows gelten, gelten auch für Subflows.
- Verhindern Sie in Konflikt stehende oder doppelte Geschäftslogik
-
Automatisierungen können mit Flow Designer, Geschäftsregeln, Workflows und Integration Hub erstellt werden. Bevor Sie Workflow-Studioverwenden, machen Sie sich mit der Funktionsweise vorhandener Now Platform Automatisierungen vertraut. Deaktivieren Sie Automatisierungen, bevor Sie sie durch Workflow-Studio -Flows und -Aktionen ersetzen. Siehe Über die Architektur, um zu erfahren, wie Workflow-Studio innerhalb von Now Platform] funktioniert.
Überprüfen Sie bei Bedarf die Dokumentation zu Flows, Subflowsund Aktionen.
- Bestimmen Sie, ob Ihr Flow einen Auslöser oder eine Variableneingabe benötigt
- Flows werden immer ausgeführt, wenn ihre Auslöserbedingungen erfüllt sind. Auslöser liefern immer die gleichen Daten als Eingabe für Flows. Wenn Sie stattdessen eine Variableneingabe zum Initiieren eines Flows benötigen, erstellen Sie einen Subflow.
- Geschäftslogik wiederverwenden
- Erstellen Sie einen Satz wiederverwendbarer Vorgänge als Subflow, der dann in mehreren Flows verwendet werden kann.
- Erteilen Sie Flow-Rollen, um auf rollengeschützte Daten zuzugreifen und Benutzerinformationen zu erhalten
- Mit Flow-Rollen können Sie Berechtigungen für Ihre Flows einfach halten. Verwenden Sie Flow-Rollen, um Benutzerinformationen zu erhalten und Zugriff auf Daten zu gewähren, anstatt einen Flow als Systembenutzer auszuführen. Durch das Hinzufügen von Flow-Rollen erhalten Sie auch Zugriff auf zusätzliche Daten, über die ein vom Benutzer initiierter Flow normalerweise nicht verfügt. Die gewährten Rollen gelten nur für den Flow. Sie gelten nicht für den Benutzer, der den Flow initiiert hat.
- Verwenden Sie Flow-Logik oder einen zeitplanbasierten Auslöser, um das Flow-Timing zu steuern
- Flow-Logik oder zeitplanbasierte Auslöser helfen, die Leistung Ihrer Flows zu optimieren. Verwenden Sie nicht die gs.sleep()- Methode, um innerhalb eines Flows zu warten. Die gs.sleep()- Methode verhindert, dass der Thread andere Aufgaben ausführt. Um einen Flow zu einem bestimmten Zeitpunkt auszuführen, verwenden Sie einen zeitplanbasierten Auslöser. Um einen Flow für eine bestimmte Dauer anzuhalten, verwenden Sie die Flow-Logik Warten auf Dauer oder Warten auf Bedingung.
- Vermeiden Sie Abhängigkeiten
- Parallele Verzweigungen, die voneinander abhängig sind, blockieren den -Flow, wenn eine Verzweigung auf die Ausgabe von einer anderen Verzweigung warten muss.
- Umfangsschleifenzähler
-
Skriptschleifen haben keine maximale Anzahl von Iterationen, daher werden Schleifen unbegrenzt ausgeführt, wenn keine gültige Austrittsbedingung vorhanden ist.
Um sicherzustellen, dass eine gültige Austrittsbedingung vorhanden ist, verwenden Sie Bereichsschleifenzähler in Inline-Skripts oder in Skriptschritten innerhalb einer Aktion.
varzufor (i=0; i< Länge; ill) hinzufügenundfür (var i=0; i< Länge; ill) abrufen - „Für jedes begrenzen“ und „Tut bis“ durchlaufen Schleifen auf 1000 Iterationen
- Iterationen mit 1000 oder mehr Schleifen können zu Problemen mit dem Arbeitsspeicherführen.
- Legen Sie die maximale Anzahl von Datensätzen für „Datensätze suchen“ auf 1000 fest.
- Vermeiden Sie es, die Eigenschaft sn_flow_designer.max_iterations zu ändern, die standardmäßig auf 1000 festgelegt ist.
- Erwägen Sie bei der Verarbeitung großer Datenmengen die Batchverarbeitung in kleinere Batches.
- Berücksichtigen Sie bei Massenimporten gleichzeitige Importe.
- QuickAPI für schnellere Ausführungen verwenden (Business-Regel-Alternative)
-
- QuickAPI- Ausführungen sind viel schneller, es steht jedoch weniger Debugging-Fähigkeit zur Verfügung.
- QuickAPI-Ausführungen im Vordergrund werden in der Benutzersitzung als der Benutzer ausgeführt, der den Flow aufgerufen hat.
- QuickAPI-Ausführungen im Hintergrund werden in einem Hintergrund-Thread in der Anwendersitzung „System“ ausgeführt.
- Verwenden Sie Bis-Schleifen, anstatt Flows von sich selbst aufzurufen
- Ein sich selbst aufrufender Flow ist nicht zulässig und weist einen Fehler auf. Wenn Flow A jedoch Flow B aufruft, kann Flow B Flow A bis zu dreimal aufrufen.
- Führen Sie Flows im Hintergrund aus
- Durch die Ausführung von Flows im Hintergrund können UI-Threads freigegeben werden, anstatt Benutzer auf Flow-Ausführungen warten zu lassen.
- Vermeiden Sie Flow-Logik, die nach dem Sammeln einer großen Ausgabe wartet
- Die Verwendung einer großen Nutzlast unmittelbar nach dem Abruf kann Probleme mit dem Arbeitsspeicher vermeiden.
- Minimieren Sie dieHexereien zwischen Umgebungen
- Ein ständiger Wechsel zwischen Schritten der Instanz [ und dem MID-Server in einem Flow kann zu Verzögerungen bei der Verarbeitung vonführen. Um das Risiko von Verzögerungen zu minimieren, beschränken Sie den Wechsel zwischen Instanz und MID auf einmal.
- Vom Flow generierte sys_complex_object-Datensätze in Update-Sätze einschließen
- Das Fehlen komplexer Datenschemas kann zu Ausführungsproblemen führen. Achten Sie darauf, die vom Flow generierten sys_complex_object-Datensätze in Update-Sätze aufzunehmen.
- Flows werden über ein Skript aufgerufen
- Starten Sie Flows mit einem anwenderdefinierten Auslöser, indem Sie von einem Skript aus aufrufen.
- Vermeiden Sie die Bereitstellung neuerer Release-Flows für Instanzen mit älteren Releases
- Workflow-Studio bietet keine Unterstützung für die Bereitstellung von Flows in Instanzen, die in früheren Releases ausgeführt werden. Manchmal ändert sich das Datenmodell des Flows zwischen Releases, was die Ausführung des Flows verhindern oder zu unerwarteten Ergebnissen führen kann.
- Flow-Reporting in der Produktion deaktivieren
- Minimieren Sie die Menge an Arbeitsspeicher, der für die Ausführung von Flows erforderlich ist, indem Sie die Flow-Berichterstellungdeaktivieren. Flow-Reporting speichert Konfigurations- und Laufzeitinformationen für die Seite „Ausführungsdetails“. Diese Berichte eignen sich gut für die Fehlerbehebung, erfordern jedoch, dass eine große Datenmenge sowohl im Arbeitsspeicher als auch in der Datenbank aufbewahrt wird. Standardmäßig ist das Flow-Reporting deaktiviert, und das System generiert Ausführungsdetails nur, wenn Sie einen Flow oder eine Aktion manuell testen. Stattdessen können Sie Protokolldateien verwenden, die auch dann verfügbar sind, wenn die Berichterstellung deaktiviert ist.
- Reduzieren Sie den Speicherverbrauch in Flows mit geschachtelten Schleifen
- Wenn die Berichterstellung aktiviert ist, legen Sie „com.snc.process_flow.reporting.iteration.lastn“ auf den Wert „1“ fest, um die Menge des Arbeitsspeichers zu reduzieren, die vorherige Schleifeniterationen verbrauchen. Je mehr Iterationen Sie berichten, desto mehr Arbeitsspeicher wird benötigt.