Erstellen von Flows
Workflow-StudioIst der Standard Now PlatformProzessautomatisierungsgenerator, der zum Erstellen von Flows verwendet wird. Workflow-StudioErsetzt WorkflowEditor.
Flows bestehen aus einem Auslöser und einer Sequenz von Aktionen und Flow-Logik. Wenn Sie einem Flow Aktionen und Flow-Logik hinzufügen, werden die erfassten oder erstellten Daten im Datenbereich angezeigt, die Sie in anderen Aktionen und Flow-Logik verwenden können.
Das Erstellen und Verwalten von Flows erfordert, dass Sie mit vertraut sind Now PlatformTabellen und Felder, die die Anwendung oder der Prozess verwendet. Prozessanalysten können Flows mithilfe verfügbarer Aktionen und Flow-Logik erstellen oder einen vorhandenen Flow kopieren, um ihn als Vorlage zu verwenden.
Aktionslimit
Standardmäßig können Flows nicht mehr als 50 Aktionen haben. Um das Standardverhalten zu ändern, erhöhen Sie den Wert von sn_flow_designer.max_actionsSystemeigenschaft. Berücksichtigen Sie jedoch die Leistungsauswirkungen, die ein großer Flow auf Ihre Instanz haben kann.
Fehlende Aktionen
Wenn ein Administrator Ihren Flow aus einem Update-Satz hinzugefügt hat, fehlen möglicherweise Aktionen in Ihrem Flow. Dies geschieht normalerweise, wenn Ihre Instanz nicht über die entsprechenden verfügt IntegrationHubSpokes installiert. Weitere Informationen zur Installation der Spokes, die Sie zum Anzeigen dieser Aktionen benötigen, finden Sie unter Spokes .
Menü „Weitere Aktionen“
Wählen Sie aus Weitere Aktionen Symbol ( ), um auf zusätzliche Optionen für Ihren Flow zuzugreifen.
- Phasen
- Greifen Sie auf die Phasen für einen Flow zu.
- Flow-Katalogvariablen verwalten
- Verwalten Sie die Katalogvariablen, die für Servicekatalog-ausgelöste Flows 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 Flows in einer von Ihnen angegebenen Anwendung.
- Flow-Einstellungen
- Aktivieren oder deaktivieren Sie Zeigen Sie Entwurfsaktionen an , Ausgelöste Flows anzeigen , Store-Spokes anzeigen , Und Inline-Skriptwechsel anzeigen Optionen.
- Code-Fragment erstellen
- Generieren Sie ein Codefragment, um einen bestimmten Flow, Subflow oder eine bestimmte Aktion aufzurufen.
- Sicherheit verwalten
- Aktivieren oder deaktivieren Sie Aufrufbar durch Client-API Option.
- Ä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 Erstellen Sie einen Titel in natürlicher Sprache .
Flows werden getestet
Sie können einen Flow direkt über testen Workflow-StudioSchnittstelle. Jeder Test führt Ihren Flow so aus, als wären die Auslöserbedingungen erfüllt. Wenn der Flow über einen Datensatzauslöser verfügt, können Sie den Datensatz angeben, der für Ihren Test verwendet werden soll. Nachdem der Flow ausgeführt wurde, verwenden Sie die Flow-Ausführungsdetails, um sicherzustellen, dass 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 Flow-Kontext ist ein zugehöriger Datensatz, der den aktuellen Status und die Laufzeitwerte des Flows enthält. Das System generiert jedes Mal einen Kontextdatensatz, wenn ein Flow ausgeführt wird.
Optional können Sie das System so konfigurieren, dass Ausführungsdetails jederzeit generiert werden, wenn ein Flow ausgeführt wird, nicht nur während des Tests. Weitere Informationen finden Sie unter Flow-Reporting aktivieren.
Flow-Eigenschaften
Die Flow-Eigenschaften enthalten Informationen zu Ihrem Flow. Wählen Sie im Haupt-Header aus Eigenschaften Zum Anzeigen oder Bearbeiten der Eigenschaften Ihres Flows.
| Eigenschaft | Beschreibung |
|---|---|
| Name | Geben Sie einen eindeutigen Namen für den Flow ein |
| Schutz | Wählen Sie aus, ob der Flow schreibgeschützt ist Keine Oder Schreibgeschützt |
| Anwendung | Wählen Sie eine Anwendung für den Flow aus. Diese Eigenschaft wird beim Erstellen des Flows festgelegt und kann danach nicht geändert werden. |
| Beschreibung | Geben Sie eine Beschreibung des Flows ein. |
| Ausführen als | Option, die Sie auswählen können, um anzugeben, dass der Flow als Systemanwender oder als Anwender, der die Sitzung initiiert, ausgeführt wird. Wählen Sie den Anwender aus, der die Sitzungsoption initiiert, wenn Aktualisierungen von dem Anwender stammen sollen, der den Flow ausgelöst hat. Verwenden Sie diese Option beispielsweise, wenn die Kommentare des Incident-Datensatzes vom aktuellen Anwender stammen sollen oder wenn 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 Anwender aus, der die Sitzungsoption initiiert. Wenn der Anwender, 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 Ist auf festgelegt Anwender, der die Sitzung initiiert . |
Flows werden gedruckt
Workflow-Studio Unterstützt mehrseitiges Drucken für Flows, Subflows, Aktionen und Flow-Ausführungsdetails. Eine Liste der unterstützten Browser finden Sie unter Browserunterstützung .
Rollen
Um auf zuzugreifen Flows, Ein Anwender muss über die Rollen Flow_Designer oder admin verfügen.
Allgemeine Leitlinien
Flows müssen kurze, modulare, 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 Konflikte oder doppelte Geschäftslogik
-
Automatisierungen können mit Flow Designer, Business-Regeln, Workflows und Integrations-Hub erstellt werden. Bevor Sie mit der Verwendung beginnen Workflow-Studio, Stellen Sie sicher, dass Sie verstehen, wie vorhanden Now PlatformAutomatisierungen funktionieren. Deaktivieren Sie Automatisierungen, bevor Sie sie durch ersetzen Workflow-StudioFlows und Aktionen. Siehe ArchitekturübersichtUm zu erfahren, wie Workflow-StudioFunktioniert innerhalb von Now Platform.
Überprüfen Flows , Subflows , Und Aktionen Dokumentation, falls erforderlich.
- 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 stellen immer dieselben Daten wie die Eingabe für Flows bereit. Wenn Sie Variableneingaben benötigen, um stattdessen einen Flow zu initiieren, erstellen Sie einen subflow .
- Geschäftslogik wiederverwenden
- Erstellen Sie einen Satz wiederverwendbarer Vorgänge als Subflow, der dann in mehreren Flows verwendet werden kann.
- Gewähren Sie Flow-Rollen, um auf rollengeschützte Daten zuzugreifen und Anwenderinformationen zu erhalten
- Flow-Rollen helfen, Berechtigungen für Ihre Flows einfach zu halten. Verwenden Sie Flow-Rollen, um Anwenderinformationen beizubehalten und Zugriff auf Daten zu gewähren, anstatt einen Flow als Systemanwender auszuführen. Durch das Hinzufügen von Flow-Rollen erhalten Sie auch Zugriff auf zusätzliche Daten, die ein anwenderinitiierter Flow normalerweise nicht hat. Die gewährten Rollen gelten nur für den Flow. Sie gelten nicht für den Anwender, der den Flow initiiert hat.
- Verwenden Sie Flow-Logik oder einen zeitplanbasierten Auslöser, um die Flow-Timing zu steuern
- Flow-Logik oder zeitbasierte Auslöser helfen, die Leistung Ihrer Flows zu optimieren. Verwenden Sie nicht gs.Sleep() Methode zum Warten innerhalb eines Flows. Die gs.Sleep() Die Methode verhindert, dass der Thread andere Arbeiten 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 Warten Sie eine Dauer Oder Warten Sie auf Bedingung Flow-Logik.
- Vermeiden Sie Abhängigkeiten
- Parallele Verzweigungen, die voneinander abhängig sind, halten einen Flow an, wenn eine Verzweigung auf die Ausgabe von einer anderen Verzweigung warten muss.
- Umfangsschleifenzähler
-
Skriptschleifen haben keine maximale Anzahl von Iterationen, daher werden Schleifen unendlich ausgeführt, wenn keine gültige Exit-Bedingung vorhanden ist.
Um sicherzustellen, dass eine gültige Exit-Bedingung vorhanden ist, verwenden Sie Umfangsschleifenzähler in Inline-Skripts oder in Skriptschritten innerhalb einer Aktion.Hinzufügen
VARBisFür (i=0; i< Länge; i++)Und abrufenFür (VAR i=0; i< Länge; i++) - Begrenzen Sie für jeden und do, bis Schleifen auf 1000 Iterationen ausgeführt werden
- Iterationen mit 1000 oder mehr Schleifen können zu Arbeitsspeicher führen Probleme .
- Legen Sie die maximale Anzahl von Datensätzen für die Suche nach Datensätzen auf 1000 fest.
- Vermeiden Sie das Ändern der Eigenschaft „sn_flow_designer.max_iterations“, die standardmäßig auf 1000 festgelegt ist.
- Erwägen Sie bei großen Datenverarbeitungsmengen die Batches in kleinere Batches.
- Berücksichtigen Sie für Massenimporte Gleichzeitige Importe .
- QuickAPI für schnellere Ausführungen verwenden (Business-Regel-Alternative)
-
- QuickAPI Ausführungen sind viel schneller, es gibt jedoch weniger Debugging-Fähigkeit.
- Vordergrund-QuickAPI-Ausführungen werden in der Anwendersitzung als Anwender ausgeführt, der den Flow aufgerufen hat.
- QuickAPI-Ausführungen im Hintergrund werden in einem Hintergrund-Thread ausgeführt und in der Anwendersitzung „System“ ausgeführt.
- Verwenden Sie „Do bis Schleifen“ anstelle von „Flows von sich selbst aufrufen“
- Ein Flow, der sich selbst aufruft, ist nicht zulässig, und es werden Fehler ausgegeben. Wenn Flow A jedoch Flow B aufruft, kann Flow B Flow A bis zu dreimal aufrufen.
- Führen Sie Flows im Hintergrund aus
- Das Ausführen von Flows im Hintergrund wird aktiviert UI-Threads Soll veröffentlicht werden, anstatt Anwender auf Flow-Ausführungen zu warten.
- Vermeiden Sie Flow-Logik, die nach der Erfassung einer großen Ausgabe wartet
- Die Verwendung einer großen Nutzlast unmittelbar nach dem Abrufen kann dazu beitragen, Speicherprobleme zu vermeiden.
- Minimieren Sie s Hexen Zwischen Umgebungen
- Ständig hin- und herwechseln zwischen Instanz und MID Serverschritte in einem Flow können zu Verzögerungen bei der Verarbeitung führen . Um das Risiko von Verzögerungen zu minimieren, beschränken Sie den Wechsel zwischen Instanz und MID auf nur ein Mal.
- Schließen Sie vom Flow generierte sys_Complex_object-Datensätze in Update-Sätze ein
- Fehlt Komplexe Daten Schemas können zu Ausführungsproblemen führen. Stellen Sie sicher, dass Sie vom Flow generierte sys_Complex_object-Datensätze in Update-Sätze einschließen.
- Flows aus einem Skript werden aufgerufen
- Starten Sie Flows mit einem anwenderdefinierten Auslöser, indem Sie über ein Skript aufrufen.
- Vermeiden Sie die Bereitstellung neuerer Release-Flows für Instanzen in älteren Releases
- Workflow-Studio Unterstützt keine Bereitstellung neuerer Release-Flows für Instanzen, die auf früheren Releases ausgeführt werden. Gefahr:Das Flow-Datenmodell kann zwischen Releases geändert werden, was verhindern kann, dass neuere Flows ausgeführt werden, oder zu unerwarteten Ergebnissen führen, wenn sie auf früheren Release-Instanzen ausgeführt werden. Führen Sie ein Upgrade Ihrer Instanzen auf die gleichen Releaseversionen durch, bevor Sie sie bereitstellen.
- Deaktivieren Sie Flow-Reporting in der Produktion
- Minimieren Sie den für die Ausführung von Flows erforderlichen Arbeitsspeicher, indem Sie ihn deaktivieren Flow-Berichterstellung . Flow-Reporting speichert Konfigurations- und Laufzeitinformationen für die Seite „Ausführungsdetails“. Diese Berichte sind gut für die Fehlerbehebung, erfordern jedoch, dass eine große Menge von Daten sowohl im Arbeitsspeicher als auch in der Datenbank aufbewahrt wird. Standardmäßig ist Flow-Reporting deaktiviert, und das System generiert nur Ausführungsdetails, wenn Sie einen Flow oder eine Aktion manuell testen. Stattdessen können Sie Protokolldateien verwenden, die weiterhin verfügbar sind, wenn die Berichterstellung deaktiviert ist.
- Reduzieren Sie die Menge des Arbeitsspeichers, der in Flows mit geschachtelter Schleife verbraucht wird
- Wenn die Berichterstellung aktiviert ist, legen Sie com.snc.process_flow.reporting.iteration.lastn auf einen Wert von „1“ fest, um die Menge des Arbeitsspeichers zu reduzieren, die vorherige Schleifeniterationen verbrauchen. Je mehr Iterationen Sie melden, desto mehr Arbeitsspeicher ist erforderlich.