Dokumentation: Flowy Steps


Please support us to improve our service. We would like to use statistics anonymously.

We do not pass on your data! You can find more information in our privacy policy.

Decline

< Zurück zur Dokumentation

Flowy Steps

Steps sind einzelne Workflow-Elemente, die eine schnelle und effektive Konfiguration von Workflows ermöglichen.

Jeder Step hat, unabhängig von seinem Typ, einige grundlegende Eigenschaften:

NameBeschreibung
Step IDEine automatisch vergebene ID, die einem Step innerhalb eines Prozesses eindeutig zugewiesen wird.
NameLegt den Namen des Steps fest.
Visual IDEine eindeutige ID, die ausschließlich vom Flowy-Frontend vergeben wird, um die Prozessvisualisierung übersichtlicher zu gestalten.
EnabledNur aktive Steps werden während der Ausführung verarbeitet.
Cache storageLegt fest, ob der Cache persistiert werden soll. Bitte beachten Sie, dass diese Einstellung von der gleichen Einstellung auf Prozessebene abhängt. Der Cache wird nur persistiert, wenn das Logging aktiviert ist.
LoggingLegt fest, ob Logs persistiert werden sollen. Bitte beachten Sie, dass diese Einstellung von der gleichen Einstellung auf Prozessebene abhängt.

Flowy unterstützt standardmäßig die folgenden Step-Typen:

  • Code Steps: ermöglichen die Erstellung von manuellem Code, z. B. JavaScript oder Groovy
  • Control Steps: dazu gehören Steps wie For Each, While und Unset Variable, mit denen der Ablauf gesteuert werden kann
  • Input- und/oder Output-Steps: Steps, die Lese- und Schreibzugriffe ermöglichen, z. B. JDBC oder REST
  • Plugin Steps: ermöglichen die Verwendung eigener oder über den Hub geteilter Plugins

Die folgenden Kapitel beschreiben die verschiedenen Step-Typen. Für jeden Step beschreibt eine Tabelle, wann der Cache und/oder Scripting verwendet werden kann.

AI Agent

Ruft einen AI-Agent-Prozess entweder synchron oder asynchron auf. Ermöglicht die Orchestrierung KI-gestützter Workflows innerhalb von Prozessen.

FeldCache-SupportScripting-Support
actionneinnein
aiAgentNameneinnein
childEventIdPathjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
AiAgentProcessNotFoundExceptionDer angegebene AI Agent existiert nicht
InterruptProcessExceptionDie Prozessausführung wurde unterbrochen
ChildEventOfParentProcessNotFoundExceptionDas Child-Event konnte während der Überwachung nicht gefunden werden
ChildProcessTimeoutExceptionDie Ausführung des AI Agents hat das Timeout überschritten
ProcessDisabledExceptionDer AI-Agent-Prozess ist inaktiv/deaktiviert

Claude

Ermöglicht die Verwendung von Claude.

FeldCache-SupportScripting-Support
actionneinnein
scriptEngineneinnein
credentialNameneinnein
modelneinnein
maxTokensneinnein
temperatureneinnein
systemneinnein
messages.roleneinnein
messages.contentjaja

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
AnthropicExceptionWird bei Fehlern auf Seiten von Anthropic ausgelöst, etwa bei einem ungültigen API-Schlüssel, unzureichendem Guthaben oder anderen dienstbezogenen Problemen.

ChatGPT

Ermöglicht die Verwendung von ChatGPT.

FeldCache-SupportScripting-Support
scriptEngineneinnein
credentialNamejanein
modelneinnein
messages.roleneinnein
messages.contentjaja
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.

CloudFront

Ermöglicht die Verwendung von CloudFront.

FeldCache-SupportScripting-Support
actionneinnein
credentialNamejanein
action.CREATE
fields.domainNamejanein
fields.domainIdjanein
fields.distributionCommentneinnein
fields.targetObjectjanein
action.LIST
fields.targetObjectjanein
action.UPDATE
fields.distributionIdjanein
fields.distributionCommentneinnein
fields.targetObjectjanein
action.DELETE
fields.targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
CloudFrontExceptionBei allen Problemen mit dem AWS-CloudFront-Dienst.

Counter

Bietet eine komfortable Möglichkeit, Zähler zu verwalten. Abhängig von der ausgewählten Action wird der Wert entweder um eins erhöht oder um eins verringert.

Existiert die Variable nicht, wird sie auf einen Standardwert gesetzt:

  • bei Inkrement: 1
  • bei Dekrement: 0
FeldCache-SupportScripting-Support
actionneinnein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
MappingExceptionWird ausgelöst, wenn targetObject auf einen nicht numerischen Wert verweist.

Credential

Ermöglicht das Erstellen, Ändern bzw. Aktivieren/Deaktivieren von Credentials zur Laufzeit von Prozessen.

FeldCache-SupportScripting-Support
actionneinnein
fields.targetObjectjanein
fields.typeneinnein
fields.namejanein
fields.rolesjanein
fields.values.*janein
fields.queryNamejanein

Dieser Step löst keine Exceptions aus.

CSV File

Dieser Step ermöglicht die komfortable Erstellung von CSV-Dateien auf Basis dynamischer Daten. Die Unterstützung von JSONPath macht ihn besonders leistungsfähig, da komplexe Datenstrukturen dadurch bequem in CSV umgewandelt werden können.

Darüber hinaus ist auch die umgekehrte Konvertierung von CSV nach JSON problemlos möglich.

FeldCache-SupportScripting-Support
actionneinnein
targetObjectjanein
sourcejanein
filtersjanein
includeHeadersneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IOExceptionDie IOException ist schlicht eine Exception, die bei einem I/O-Fehler ausgelöst wird.
InvalidCsvSourceStepExceptionBei der Action JSON_TO_CSV muss source ein Array sein, die Action CSV_TO_JSON erfordert source als String.

DeepSeek

Ermöglicht die Verwendung von DeepSeek.

FeldCache-SupportScripting-Support
actionneinnein
scriptEngineneinnein
credentialNameneinnein
modelneinnein
temperatureneinnein
maxTokensneinnein
topPneinnein
frequencyPenaltyneinnein
presencePenaltyneinnein
messages.roleneinnein
messages.contentjaja

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
HttpClientErrorExceptionWird bei Fehlern auf Seiten von Deep Seek ausgelöst, etwa bei einem ungültigen API-Schlüssel, unzureichendem Guthaben oder anderen anfragebezogenen Problemen.

Do Until

Führt eine Reihe von Steps wiederholt aus und wertet anschließend eine Bedingung aus. Die Schleife läuft, bis die Bedingung zu true ausgewertet wird. Es handelt sich um eine Schleife mit Nachprüfung: Die Steps werden also immer mindestens einmal ausgeführt, bevor die Bedingung geprüft wird.

FeldCache-SupportScripting-Support
scriptEngineneinnein
queryjaja
stepsneinnein

Do While

Dieser Step stellt eine Schleife bereit, die mindestens einmal ausgeführt wird, bevor die Bedingung geprüft wird. Anders als beim While-Step werden zuerst die Steps innerhalb der Schleife ausgeführt und erst danach die Query-Bedingung ausgewertet. Die Schleife läuft weiter, solange die Bedingung wahr ist.

FeldCache-SupportScripting-Support
scriptEngineneinnein
queryjaja
stepsneinnein

Encoder

Dieser Step bietet ein vielseitiges Werkzeug zum Kodieren und Dekodieren. Damit lässt sich die Zeichenkodierung von Text ändern, es können HTML-Sonderzeichen kodiert sowie URL-Kodierung und -Dekodierung durchgeführt werden. Er unterstützt eine Vielzahl von Zeichenkodierungen und stellt sicher, dass Web-Inhalte sicher für die Anzeige oder Übertragung vorbereitet werden.

FeldCache-SupportScripting-Support
actionneinnein
convertsneinnein
converts.sourceObjectjanein
converts.targetObjectjanein
converts.sourceEncodingneinnein
converts.targetEncodingneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IllegalArgumentExceptionSourceObject und/oder targetObject ist kein gültiger String.

ESC/POS converter

Dieser Step ermöglicht die Konvertierung eines Bildes in das ESC/POS-Format.

FeldCache-SupportScripting-Support
sourceObjectjanein
targetObjectjanein

Execute External Command

Dieser Step ermöglicht die Ausführung anderer Anwendungen. Daten können sowohl über Kommandozeilenparameter als auch über die Standardeingabe übergeben werden. Als Ergebnis stellt er den Rückgabecode, die Standardausgabe sowie die Fehlerausgabe bereit.

FeldCache-SupportScripting-Support
inputjaja
commandjaja
resultCodejanein
resultErrorsjanein
targetObjectjanein
timeoutneinnein

Information

Ein abschließendes Semikolon (;) am Ende des Befehls ist nicht erforderlich.

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IOExceptionDie IOException ist schlicht eine Exception, die bei einem I/O-Fehler ausgelöst wird.
TimeoutExceptionWird ausgelöst, wenn das Timeout erreicht wird.

Execute Parallel Steps

Führt mehrere Batches von Steps gleichzeitig aus und ermöglicht so parallele Verarbeitungs-Workflows. Jeder Batch läuft unabhängig in einem eigenen Thread, während die Steps innerhalb eines Batches nacheinander ausgeführt werden. Alle Batches müssen abgeschlossen sein, bevor der Step endet.

FeldCache-SupportScripting-Support
batches.nameneinnein
batches.inputneinnein
batches.stepsneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
BatchExecutionExceptionWird bei der Batch-Ausführung ausgelöst, wenn eine unerwartete Nicht-Runtime-Exception oder ein Fehler auftritt.

Information

Während Batches parallel laufen, werden die Steps innerhalb eines Batches nacheinander ausgeführt. Das bedeutet: Ein Batch mit zwei Steps schließt den ersten Step ab, bevor er den zweiten startet.

Execute Process

Dieser Step ermöglicht die Ausführung anderer Flowy-Prozesse. Die Ausführung kann in vier Modi erfolgen:

  • inline,
  • synchron,
  • asynchron und
  • embedded.

Bei der Inline-Ausführung werden die referenzierten Child-Prozesse synchron im Ausführungskontext des Parents ausgeführt, ähnlich wie Funktionen in vielen Programmiersprachen. Der Parent wartet, bis der Child abgeschlossen ist, und übernimmt dessen Ergebnisse in seinen eigenen Cache. Input- und Output-Mapping werden unterstützt. In diesem Fall werden die Timeout- und Ausführungseinstellungen der Child-Prozesse ignoriert. Dies ist die Standardwahl für die gewöhnliche synchrone Komposition: Immer wenn der Parent die Ausgabe des Sub-Prozesses benötigt, um fortzufahren - zum Beispiel beim Aufruf eines Validierungsprozesses und der anschließenden Verzweigung anhand dessen Ergebnisses -, sollte zuerst Inline verwendet werden.

Bei der synchronen Ausführung wartet der Parent-Prozess ebenfalls auf das Ergebnis, der Child läuft jedoch als eigenständiges synchrones Event und nicht innerhalb der eigenen Ausführung des Parents. Dadurch erhält der Sub-Prozess einen eigenen, separaten Ausführungseintrag, während der Parent weiterhin blockiert wird, bis dieser abgeschlossen ist. Eingabewerte können an die Children übergeben werden (Input-Mapping) und Ausgabewerte von ihnen empfangen werden (Output-Mapping).

Bei der asynchronen Ausführung werden die auslösenden Events für die Children als unabhängige Child-Events erzeugt und der Parent-Prozess läuft sofort weiter, ohne zu warten (Fire-and-Forget). In diesem Modus können Daten nur über das Input-Mapping an die Child-Prozesse übergeben werden. Verwenden Sie ihn, wenn die Arbeit im Hintergrund erfolgen kann und der Parent das Ergebnis nicht sofort benötigt, oder wenn Sie mehrere Sub-Prozesse starten und später mit einem Wait-Step zusammenführen möchten (siehe unten). Erfassen Sie die Kennung jedes von diesem Step erzeugten Child-Events (über childEventIdPath), damit Sie anschließend darauf warten können.

Es ist wichtig zu beachten, dass sowohl synchrone als auch asynchrone Ausführungen bestimmte Einstellungen wie die maximale Verarbeitungsdauer und die maximale Anzahl gleichzeitiger Ausführungen einhalten. Eine sorgfältige Planung der Parent-Child-Ausführungen und Anpassungen anhand der verfügbaren Ressourcen werden empfohlen.

Bei der Embedded-Ausführung verhält sich der Child wie bei Inline - er läuft synchron innerhalb des Parents und wartet auf dessen Ergebnis -, erzeugt aber bewusst kein Ausführungs-Log. Da der Aufwand für das Persistieren von Ausführungs- und Cache-Daten des Aufrufs entfällt, ergibt sich ein deutlicher Performancegewinn, wodurch sich dieser Modus gut für Hot Paths und produktive Workloads mit hohem Volumen eignet. Der Nachteil: Der Ausführungsverlauf geht verloren und der Aufruf kann nicht über die Log- und Debug-Ansicht analysiert werden. Verwenden Sie ihn daher nur dann, wenn der Ausführungsverlauf tatsächlich keine Rolle spielt.

FeldCache-SupportScripting-Support
processNameneinnein
actionneinnein
inputjanein
outputjanein
childEventIdPathjanein
priorityneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
ChildProcessNotFoundExceptionDer Child-Prozess wurde nicht gefunden.
ChildEventOfParentProcessNotFoundExceptionDas Child-Event für den Parent-Prozess wurde nicht gefunden.
ChildProcessTimeoutExceptionDer Child-Prozess des Parent-Prozesses ist in ein Timeout gelaufen.
ProcessDisabledExceptionDer Child-Prozess des Parent-Prozesses wurde deaktiviert.

Flowy Cache

Bietet Möglichkeiten, auf Variablen aus dem Flowy Cache zuzugreifen; dies wird für große Dateien benötigt.

FeldCache-SupportScripting-Support
actionneinnein
sourceObjectjanein

For Each

Dieser Step bietet eine einfache Möglichkeit, Operationen mehrfach auszuführen. Dazu muss eine Query-Bedingung definiert werden. Für jeden gefundenen Datensatz wird die Schleife einmal ausgeführt.

Record Name definiert den Variablennamen, über den auf den aktuell zu verarbeitenden Datensatz zugegriffen werden kann.

FeldCache-SupportScripting-Support
queryjanein
stepsneinnein
recordNamejanein

Formatting

Ermöglicht die Formatierung von Zahlen in das gewünschte Format.

Informationen zu Patternsopen in new window bzw. Localesopen in new window finden Sie unter den angegebenen Links.

FeldCache-SupportScripting-Support
actionneinnein
converts.sourceObjectjanein
converts.targetObjectjanein
fields.localeneinnein
fields.patternneinnein
fields.groupingSeparatorjanein
fields.decimalSeparatorjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
IllegalArgumentExceptionBei falschem Pattern oder ungültigen Eingabedaten.

FTP/SFTP

Ermöglicht die Kommunikation mit FTP- bzw. SFTP-Servern.

FeldCache-SupportScripting-Support
credentialNameneinnein
pathjanein
actionneinnein
targetObjectjanein
oldPathjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
CacheObjectCastExceptionWenn die referenzierte Variable einen ungültigen Wert enthält (z. B. eine Map oder ein Array am targetObject-Pfad).
IOExceptionDie IOException ist schlicht eine Exception, die bei einem I/O-Fehler ausgelöst wird.
FtpExceptionBei allen Problemen mit dem FTP/SFTP-Dienst.

GraphQL

Ermöglicht deklaratives Abrufen von Daten mit der Abfragesprache GraphQL aus http(s)-Quellen (unter Verwendung von REST-Credentials).

FeldCache-SupportScripting-Support
credentialNameneinnein
targetUrljaja
headersjaja
queryneinnein
variablesjaja
targetObjectjanein
responseCodejanein
timeoutneinnein

Es ist möglich, auf ein REST-Credential zu verweisen. In diesem Fall können die in diesem Credential definierten Felder im Format #name innerhalb der Felder headers, variables und targetUrl verwendet werden.

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
IllegalArgumentExceptionDer angegebene URL-String ist keine gültige URI.

Groovy

Der Groovy-Step bietet eine leistungsfähige Möglichkeit, Groovy-Code direkt innerhalb eines Prozesses auszuführen. Dieser Code kann beliebig viele Zeilen enthalten. Das Ergebnis wird in der Variablen mit dem definierten Namen gespeichert.

Der Step garantiert keine bestimmte Ausführungsreihenfolge. Verwenden Sie mehrere Steps, wenn Ihr Workflow davon abhängt.

FeldCache-SupportScripting-Support
libraryNameneinnein
setjaja
credentialNameneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
MultipleCompilationErrorsException or CompilationFailedExceptionWird ausgelöst, wenn die Kompilierung aufgrund von Quelltextfehlern fehlschlägt.
MissingPropertyExceptionTritt auf, wenn ein dynamischer Property-Aufruf mit einer unbekannten Property fehlschlägt.
MissingClassExceptionTritt auf, wenn ein dynamischer Methodenaufruf mit einer unbekannten Klasse fehlschlägt.
MissingFieldExceptionTritt auf, wenn ein dynamischer Feldaufruf mit einem unbekannten Feld fehlschlägt.
MissingMethodExceptionTritt auf, wenn ein dynamischer Methodenaufruf mit einer unbekannten Methode fehlschlägt.
GroovyRuntimeExceptionEine vom Interpreter ausgelöste Exception.
StringWriterIOExceptionBeim Anhängen an einen StringWriter ist eine IO-Exception aufgetreten, was nie vorkommen sollte.

iCalendar

Ermöglicht die Erstellung einer Datei im iCalendar-Format.

FeldCache-SupportScripting-Support
organizerjanein
summaryjanein
descriptionjanein
startTimejanein
endTimejanein
participants.namejanein
participants.emailjanein
alarm.alarmTimejanein
alarm.alarmDescriptionjanein
recurrence.frequencyjanein
recurrence.frequencyIntervaljanein
statusjanein
urljanein
locationjanein
targetObjectjanein

If

Dieser Step ermöglicht die bedingte Ausführung von Steps auf Basis einer einzelnen Bedingung. Die Bedingung wird einmal ausgewertet und, wenn sie zu true ausgewertet wird, werden die Steps innerhalb des If-Blocks ausgeführt. Die Bedingung kann in der ausgewählten Skriptsprache formuliert werden.

FeldCache-SupportScripting-Support
scriptEngineneinnein
conditionjaja
stepsneinnein

Image

Der Image-Step bietet Funktionen zum Herunterladen und Bearbeiten von Bildern. Er bietet folgende Actions:

  • Convert: konvertiert Bilder von ihrem aktuellen Dateiformat in ein anderes
  • Crop: schneidet ein Rechteck aus einem Bild aus
  • Download: lädt ein Bild von einer URL
  • From template: erzeugt ein Bild auf Basis einer ausgewählten Vorlage
  • Info: liefert Details zum Bild für die Weiterverarbeitung
  • Rescale: passt Breite und/oder Höhe des Bildes an
FeldCache-SupportScripting-Support
actionneinnein
targetObjectjanein
fields.sourcejanein
fields.typeneinnein
fields.heightjaja
fields.widthjaja
fields.positionXjaja
fields.positionYjaja
fields.variablesjanein
fields.localeneinnein
fields.textTemplatejanein

Dieser Step kann eine der folgenden Exceptions auslösen:

ActionNameBeschreibung
AllIOExceptionDie IOException ist schlicht eine Exception, die bei einem I/O-Fehler ausgelöst wird.
DownloadMalformedURLExceptionWird ausgelöst, um anzuzeigen, dass eine fehlerhafte URL aufgetreten ist. Entweder konnte in einem Spezifikations-String kein gültiges Protokoll gefunden werden oder der String konnte nicht geparst werden.
From TemplateXRRuntimeExceptionEine Exception des HTML-Renderers.

Imap

Der Imap-Step bietet Methoden zur Verarbeitung von E-Mails, die über das IMAP-Protokoll zugänglich sind. Dies wird von allen modernen E-Mail-Servern und -Anbietern unterstützt.

Wenn Sie E-Mails versenden möchten, lesen Sie bitte den SMTP-Step.

FeldCache-SupportScripting-Support
credentialNameneinnein
actionneinnein
folderjaja
fields.targetObjectjanein
fields.senderjaja
fields.recipientjaja
fields.subjectjaja
fields.bodyjaja
fields.readTypeneinnein
fields.maxResultsneinnein
fields.emailIdjaja

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
NoSuchProviderExceptionDiese Exception wird ausgelöst, wenn Session versucht, einen Provider zu instanziieren, der nicht existiert.
MessagingExceptionDie Basisklasse für alle von den Messaging-Klassen ausgelösten Exceptions.
ImapMessageNotFoundExceptionDie Nachricht wurde nicht gefunden.

JDBC

Mit dem Wert ConnectionTimeout im JDBC-Credential können Sie die maximale Anzahl an Millisekunden festlegen, die das System auf eine Verbindung aus dem Pool wartet. Wird diese Zeit überschritten, ohne dass eine Verbindung verfügbar wird, wird eine SQLException ausgelöst.

Das niedrigste zulässige Connection-Timeout beträgt 250 ms, der Standardwert 30000 ms (30 Sekunden).

FeldCache-SupportScripting-Support
actionneinnein
credentialNameneinnein
queryjanein
targetObjectjanein

Der JDBC-Step verfügt über integrierte Methoden für die komfortable Verwendung von Variablen. Im Einzelnen:

MethodBeschreibungExample usage
f_arrayWandelt die angegebene Cache-Variable in ein Array mit eckigen Klammern um; eine Cache-Variable mit dem Inhalt [1, 2, 3, 4] wird zu array[1, 2, 3, 4]SELECT * FROM user WHERE id = ANY(f_array($.userids))
f_listWandelt die angegebene Cache-Variable in ein Array mit runden Klammern um; eine Cache-Variable mit dem Inhalt [1, 2, 3, 4] wird somit zu (1, 2, 3, 4)SELECT * FROM user WHERE id IN f_list($.ids)
f_list_inBehandelt listenbasierte Bedingungen in JDBC-Abfragen. Es stellt sicher, dass die übergebene Liste weder NULL noch leer ist, bevor eine gültige SQL-Klausel erzeugt wird.
Enthält die Liste Werte, fügt die Funktion der Abfrage eine IN-Bedingung hinzu. Ist die Liste NULL oder leer, liefert sie eine neutrale Bedingung, die die Ergebnisse nicht filtert, und umgeht damit effektiv die IN-Klausel.
SELECT * FROM test t WHERE t.name = 'test' AND f_list_in(t.id, $.array)
f_queryMit dem Query-Builder-Step lassen sich dynamische Abfragebedingungen einfach vorbereiten. Die Methode f_query ermöglicht die Verwendung dynamischer Bedingungen, die auf der Interpretation von Variablen beruhenSELECT * FROM records WHERE f_query($.mycondition)

Abfragen können im folgenden Format eingegeben werden:

// pass condition generated using Query Builder:
SELECT * FROM tbl f_query($.queryCondition)"
// combine dynamic conditions generated using Query Builder with an additional variable:
SELECT * FROM tbl WHERE f_query($.queryCondition) AND date = $.d"

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
SQLExceptionAllgemeine SQL-Exception.
NotSingleResultExceptionDiese Exception wird ausgelöst, wenn die Ergebnismenge mehr als einen Datensatz enthält, obwohl ein einzelnes Ergebnis erwartet wurde.

Jira

Ermöglicht die Integration mit Atlassian Jira für die Issue-Verwaltung, einschließlich Erstellen, Aktualisieren, Suchen und Transitionieren von Issues.

FeldCache-SupportScripting-Support
actionneinnein
credentialNamejanein
targetObjectneinnein
fields.projectKeyjanein
fields.issueTypejanein
fields.summaryjanein
fields.descriptionjanein
fields.assignee.accountIdjanein
fields.assignee.emailjanein
fields.assignee.createUserIfNotExistsneinnein
fields.reporter.accountIdjanein
fields.reporter.emailjanein
fields.reporter.createUserIfNotExistsneinnein
fields.labelsjanein
fields.componentsjanein
fields.parentjanein
fields.customFieldsneinnein
fields.addLabelsjanein
fields.removeLabelsjanein
fields.transitionIdjanein
fields.commentjanein
fields.jqljanein
fields.maxResultsjanein
fields.nextPageTokenjanein
fields.fieldsjanein
fields.expandjanein
fields.filejanein
fields.filenamejanein
fields.emailjanein
fields.timeSpentSecondsjanein
fields.startedjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
UserNotFoundExceptionDer Benutzer mit der angegebenen E-Mail-Adresse wurde nicht gefunden und createUserIfNotExists ist false
RestClientExceptionHTTP-Fehler der Jira-API (z. B. 401 unauthorized, 404 not found, 400 bad request)
SecurityManagerExceptionJira-Credentials nicht gefunden oder deaktiviert

JavaScript

Der JavaScript-Step bietet eine leistungsfähige Möglichkeit, JavaScript-Code direkt innerhalb eines Prozesses zu verwenden. Dieser Code kann beliebig viele Zeilen enthalten. Das Ergebnis wird in der Variablen mit dem definierten Namen gespeichert.

Der Step garantiert keine bestimmte Ausführungsreihenfolge. Verwenden Sie mehrere Steps, wenn Ihr Workflow davon abhängt.

Aufgrund von Einschränkungen der JavaScript-Engine ist es nicht möglich, einer Variablen direkt einen Objektwert zuzuweisen. Stattdessen sollte der folgende Ansatz verwendet werden:

X = 123

Dieses Skript muss anschließend auf die gewünschte Flowy-Variable gemappt werden, die den Inhalt von X enthalten soll.

Es ist möglich, Exceptions auszulösen und sie mit einem Try/Catch-Step auf folgende Weise abzufangen:

class CustomJsException extends Error {  constructor(message) {
    super(message);
    this.name = this.constructor.name;
  }
}

throw new CustomJsException("custom message");

Der Catch muss den Namen CustomJsException tragen, damit er in diesem Fall ausgelöst wird.

FeldCache-SupportScripting-Support
libraryNameneinnein
setjaja
credentialNameneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
PolyglotExceptionWird ausgelöst, wenn das Parsen oder Auswerten des JS-Codes fehlgeschlagen ist.
LibraryDisabledExceptionWird ausgelöst, wenn eine referenzierte Library deaktiviert ist.
MissedLibraryArtifactExceptionWird ausgelöst, wenn für die referenzierte Library kein Artifact hochgeladen wurde.
InvalidLibraryTypeExceptionWird ausgelöst, wenn eine referenzierte Library einen ungültigen Typ hat.

JSON

Der JSON-Step stellt eine Reihe von Operationen zum Transformieren und Abfragen von JSON-Objekten bereit, die im Prozess-Cache gespeichert sind. Er unterstützt folgende Funktionen:

  • Evaluate - Wertet einen JSONata-Ausdruck gegen ein Quellobjekt aus und ermöglicht sowohl einfachen Property-Zugriff als auch fortgeschrittene Transformationen wie Filtern, Aggregieren und String-Verkettung.
  • Merge - Führt einen Deep Merge von zwei oder mehr Objekten in der in sources angegebenen Reihenfolge durch. Bei doppelten Schlüsseln auf beliebiger Verschachtelungsebene hat der Wert der letzten Quelle Vorrang.
  • Sort - Sortiert eine Liste von Objekten aufsteigend anhand des im Ausdruck angegebenen Feldes.
  • Group - Gruppiert eine Liste von Objekten nach dem im Ausdruck angegebenen Feld. Das Ergebnis ist ein Objekt, bei dem jeder Schlüssel einen eindeutigen Feldwert darstellt und jeder Wert eine Liste der zugehörigen Einträge ist.
  • Flatten - Wandelt ein verschachteltes Objekt in eine Map mit Schlüsseln in Punktnotation um.
  • Unflatten - Rekonstruiert ein verschachteltes Objekt aus einer flachen Map mit Schlüsseln in Punktnotation.
  • Compare - Vergleicht zwei Objekte und liefert ein strukturiertes Ergebnis mit vier Schlüsseln:
    • added - Schlüssel, die nur in compareObject vorhanden sind
    • removed - Schlüssel, die nur in baseObject vorhanden sind
    • changed - Schlüssel, die in beiden Objekten vorhanden sind, aber unterschiedliche Werte haben (jeder Eintrag enthält die Unterschlüssel base und compare)
    • unchanged - Schlüssel mit identischen Werten in beiden Objekten
FeldCache-SupportScripting-Support
actionneinnein
targetObjectjanein
fields.sourceObjectjanein
fields.expressionjanein
fields.sourcesjanein
fields.baseObjectjanein
fields.compareObjectjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JExceptionWird ausgelöst, wenn das Feld expression (Action: EVALUATE) einen syntaktisch ungültigen oder nicht auswertbaren JSONata-Ausdruck enthält.

JWT

Der JWT-Step erzeugt ein JWT-Token auf Basis der angegebenen Werte.

FeldCache-SupportScripting-Support
credentialNameneinnein
targetObjectjanein
payloadjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
NoSuchAlgorithmExceptionDer erforderliche Algorithmus ist nicht verfügbar.
InvalidKeySpecExceptionDiese Exception tritt bei ungültigen Schlüsselspezifikationen auf.
InvalidKeyExceptionWird ausgelöst, wenn der Schlüssel unzureichend ist oder von der JWT-Spezifikation für den angegebenen Algorithmus ausdrücklich nicht zugelassen wird.

LaTeX

Erzeugt PDF-Dokumente aus LaTeX-Vorlagen mithilfe von Template-Engines. Der Step verarbeitet eine LaTeX-Vorlage mit Variablen, kompiliert sie mit pdflatex zu PDF und speichert die resultierende PDF-Datei im Cache.

FeldCache-SupportScripting-Support
actionneinnein
fields.textTemplatejanein
fields.localeneinnein
fields.variablesjanein
targetObjectjanein

Der LaTeX-Step unterstützt die folgenden Template-Engines zur Verarbeitung von Vorlagen:

  • Handlebars
  • Mustache
  • Velocity

Dieser Step kann Exceptions auslösen:

NameBeschreibung
TextTemplateExceptionWird ausgelöst, wenn ein Step versucht, eine Vorlage zu verwenden, die nicht existiert.

LDAP

Ermöglicht die Kommunikation mit LDAP-Servern.

FeldCache-SupportScripting-Support
actionneinnein
credentialNamejanein
action.BIND
fields.objectClassAttributesneinnein
fields.dnneinnein
fields.attributeValues.nameneinnein
fields.attributeValues.valueneinnein
action.SEARCH
fields.dnneinnein
fields.filterneinnein
fields.searchKeyneinnein
fields.targetObjectjanein
action.MODIFY
fields.dnneinnein
fields.attributeValues.nameneinnein
fields.attributeValues.valueneinnein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
NestedRuntimeExceptionBei jeglichen Problemen mit dem LDAP-Dienst.

Log

Dieser Step schreibt einen gewünschten Eintrag ins Log; das ist hilfreich beim Debugging komplexer Prozesse.

FeldCache-SupportScripting-Support
messagejanein

MCP

Integriert Model-Context-Protocol-(MCP-)Server, um auf externe Tools, Ressourcen und Prompts zuzugreifen.

FeldCache-SupportScripting-Support
actionneinnein
credentialNameneinnein
targetObjectjanein
fields.operationjanein
fields.parametersjanein
fields.urijanein
fields.namejanein
fields.argumentsjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
SecurityManagerExceptionProzess-Credentials nicht gefunden oder deaktiviert
McpExceptionMCP-Operation fehlgeschlagen (Verbindungsfehler, Tool-Ausführungsfehler, Timeout)

Messaging

Ermöglicht das Senden von Nachrichten an Kafka.

FeldCache-SupportScripting-Support
credentialNameneinnein
serviceneinnein
messagejaja
messageKeyjaja

Mongo DB

Für diesen Step müssen Sie die Details in einem Mongo-DB-Credential angeben. Innerhalb der URL können Sie connectTimeout und socketTimeout definieren:

  • Das Connection-Timeout ist die Anzahl der Millisekunden, die der Treiber wartet, bevor ein neuer Verbindungsversuch abgebrochen wird
  • Das Socket-Timeout ist die Anzahl der Millisekunden, die ein Senden oder Empfangen über einen Socket dauern darf, bevor es zu einem Timeout kommt

Information

Bitte beachten Sie, dass dieser Step-Typ auch für die Verbindung zu Amazon DocumentDB verwendet werden kann.

FeldCache-SupportScripting-Support
actionneinnein
credentialNamejanein
collectionNameneinnein
queryjanein
projectionneinnein
queryUpdatejanein
targetObjectjanein

Der Mongo-DB-Step verfügt über integrierte Methoden für die komfortable Verwendung von Variablen. Im Einzelnen:

MethodBeschreibungExample usage
f_queryMit dem Query-Builder-Step lassen sich dynamische Abfragebedingungen einfach vorbereiten. Die Methode f_query ermöglicht die Verwendung dynamischer Bedingungen, die auf der Interpretation von Variablen beruhen{f_query($.queryCondition)}

Abfragen können im folgenden Format eingegeben werden:

// pass dynamic conditions generated using Query Builder offers two possibilites:
{$.queryCondition}
$.queryCondition
// combine dynamic query with static values
{$.queryCondition is_active: $.isActive, email: "user@mail.com"}

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
MongoExceptionBasisklasse für Mongo-Exceptions. Die genaue Exception hängt von den Mongo-Treibern ab und kann Folgendes umfassen:
MongoChangeStreamException, MongoClientException, MongoConfigurationException, MongoSecurityException, MongoTimeoutException, MongoWaitQueueFullException, MongoExecutionTimeoutException, MongoGridFSException, MongoIncompatibleDriverException, MongoInternalException, MongoInterruptedException, MongoServerException, BulkWriteException, MongoBulkWriteException, MongoCommandException, MongoNodeIsRecoveringException, MongoNotPrimaryException, MongoQueryException, MongoCursorNotFoundException, MongoWriteConcernException, MongoWriteException, WriteConcernException, DuplicateKeyException, MongoSocketException, MongoSocketClosedException, MongoSocketOpenException, MongoSocketReadException, MongoSocketReadTimeoutException, MongoSocketWriteException

OCR

Dieser Step ermöglicht die Verwendung von OCR.

FeldCache-SupportScripting-Support
languagejanein
imagejanein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
TesseractExceptionBei allen Problemen mit dem Tesseract-Dienst.
IOExceptionWird ausgelöst, wenn ein I/O-Fehler auftritt.

Outlook Calendar

Dieser Step ermöglicht die Verwaltung von Outlook-Terminen. Bitte beachten Sie, dass das Token nach der Authentifizierung im Storage abgelegt wird, wobei die Prozess-ID und der Credential-Name als Schlüssel dienen.

FeldCache-SupportScripting-Support
credentialNamejanein
actionneinnein
action.CREATE
fields.subjectjanein
fields.subjectjanein
fields.body.contentTypejanein
fields.body.contentjanein
fields.start.dateTimejanein
fields.start.timeZonejanein
fields.end.dateTimejanein
fields.end.timeZonejanein
fields.locationjanein
fields.attendees.addressjanein
fields.attendees.namejanein
fields.attendees.typejanein
fields.reminderMinutesBeforeStartjanein
fields.recurrence.patternjanein
fields.recurrence.rangejanein
fields.calendarIdjanein
fields.userIdjanein
fields.targetObjectjanein
action.LIST
fields.calendarIdjanein
fields.targetObjectjanein
fields.userIdjanein
action.UPDATE
fields.eventIdjanein
fields.subjectjanein
fields.body.contentTypejanein
fields.body.contentjanein
fields.start.dateTimejanein
fields.start.timeZonejanein
fields.end.dateTimejanein
fields.end.timeZonejanein
fields.locationjanein
fields.attendees.addressjanein
fields.attendees.namejanein
fields.attendees.typejanein
fields.reminderMinutesBeforeStartjanein
fields.recurrence.patternjanein
fields.recurrence.rangejanein
fields.calendarIdjanein
fields.userIdjanein
fields.targetObjectjanein
action.DELETE
fields.eventIdjanein
fields.calendarIdjanein
fields.userIdjanein
action.AUTH
fields.expiresInneinnein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.

Paymentsense Connect-E

Dieser Step ermöglicht die Verwendung der von Paymentsense bereitgestellten Connect-E-API.

FeldCache-SupportScripting-Support
actionneinnein
credentialNameneinnein
targetObjectjanein
create access token parametersneinnein
cross reference payment parametersneinnein
parameters.accessTokenjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
RestClientExceptionEine RestClientException wird ausgelöst, wenn eine Anfrage aufgrund einer Server-Fehlerantwort, eines Fehlers beim Dekodieren der Antwort oder eines I/O-Fehlers auf niedriger Ebene fehlschlägt.

Paymentsense PAC

Dieser Step ermöglicht die Verwendung der von Paymentsense bereitgestellten PAC-API.

FeldCache-SupportScripting-Support
actionneinnein
credentialNameneinnein
targetObjectjanein
parameters.terminalIdjanein
parameters.reportTypeneinnein
parameters.requestIdjanein
parameters.acceptedneinnein
parameters.transaction.*neinnein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
RestClientExceptionEine RestClientException wird ausgelöst, wenn eine Anfrage aufgrund einer Server-Fehlerantwort, eines Fehlers beim Dekodieren der Antwort oder eines I/O-Fehlers auf niedriger Ebene fehlschlägt.

PDF

Dieser Step ermöglicht die Erstellung von PDF-Dateien. Dazu verwendet er eine Vorlage, an die Variablen im üblichen Format übergeben werden können. Details zum Ausgabeformat und weitere Fragen finden Sie unter Flyingsaucerprojectopen in new window.

FeldCache-SupportScripting-Support
actionneinnein
fields.textTemplatejanein
fields.localeneinnein
fields.variablesjanein
fields.sourceObjectjanein
fields.pageNumberjanein
targetObjectjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IOExceptionSignalisiert, dass eine I/O-Exception irgendeiner Art aufgetreten ist. Diese Klasse ist die allgemeine Klasse für Exceptions, die durch fehlgeschlagene oder unterbrochene I/O-Operationen entstehen.
DocumentExceptionException bei der PDF-Erzeugung.
IndexOutOfBoundsExceptionSignalisiert, dass die Seitenzahl die Dokumentlänge überschreitet.

Plugin

Ermöglicht die Verwendung selbst entwickelter Plugins.

FeldCache-SupportScripting-Support
actionjanein
pluginNameneinnein
pluginSettingNameneinnein
pluginCredentialNameneinnein
inputjanein
outputjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
PluginDisabledExceptionDas Plugin wurde deaktiviert.
PluginNotFoundExceptionDas Plugin wurde nicht gefunden.
PluginSettingDisabledExceptionDie Plugin-Einstellung wurde deaktiviert.
PluginSettingNotFoundExceptionDie Plugin-Einstellung wurde nicht gefunden.
BundleExceptionException, die anzeigt, dass ein Problem im Lebenszyklus eines Bundles aufgetreten ist.
ClassNotFoundExceptionWird ausgelöst, wenn eine Anwendung versucht, eine Klasse über ihren String-Namen zu laden, aber keine Definition für eine Klasse mit dem angegebenen Namen gefunden werden konnte.
NoSuchMethodExceptionWird ausgelöst, wenn eine bestimmte Methode nicht gefunden werden kann.
InvocationTargetExceptionEine Checked Exception, die eine von einer aufgerufenen Methode oder einem Konstruktor ausgelöste Exception kapselt.

Process Settings

Ermöglicht die Verwendung generischer Einstellungen. Dies ist nützlich, um Unterschiede zwischen Flowy-Umgebungen zu verwalten.

FeldCache-SupportScripting-Support
processSettingNameneinnein
targetObjectjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
ProcessSettingsDisabledExceptionDie Prozess-Einstellung wurde deaktiviert.
ProcessSettingsNotFoundExceptionDie Prozess-Einstellung wurde nicht gefunden.

Python

Der Python-Step ermöglicht mithilfe der Bibliothek Jep die Ausführung von Python-Code. Jep steht für Java Embedded Python und integriert CPython über das Java Native Interface (JNI) in Java. Durch die Verwendung des nativen Python-Interpreters ist dieser Ansatz hinsichtlich der Geschwindigkeit alternativen Methoden deutlich überlegen.

Darüber hinaus bietet Jep Zugriff auf hochwertige Python-Module, sowohl native CPython-Erweiterungen als auch Python-basierte Module. Es arbeitet plattformübergreifend, was seine Vielseitigkeit erhöht. Zu beachten ist jedoch, dass eine lokale Python-Installation erforderlich ist, damit es funktioniert.

FeldCache-SupportScripting-Support
libraryNameneinnein
setjaja
credentialNameneinnein

Bitte beachten Sie, innerhalb von set gilt:

  • execution (optional): der Code, der ausgeführt werden soll; kann kein Ergebnis zurückgeben
  • result (erforderlich): muss Code enthalten, der ein Ergebnis zurückgibt

Werden beide Werte angegeben, werden beide in der oben aufgeführten Reihenfolge ausgeführt.

Beispiel 1:

# execution:
a = 2
b = 5
c = a + b

# result:
c

Beispiel 2 (gleiches Ergebnis wie oben):

# execution:
a = 2
b = 5

# result:
a + b

Dieser Step kann eine Exception auslösen:

NameBeschreibung
JepExceptionBei Syntaxfehlern.

QR

Ermöglicht die Erstellung von QR-Codes.

FeldCache-SupportScripting-Support
sizeneinnein
contentjanein
errorCorrectionLevelneinnein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
IOExceptionWird ausgelöst, wenn ein I/O-Fehler auftritt.
QRDataTooBigExceptionTritt auf, wenn die Eingabedaten zu lang sind.

Query Builder

Ermöglicht die komfortable Vorbereitung von Abfragebedingungen. Die angegebene condition wird geprüft und, wenn sie sich als wahr erweist, werden die Werte von query an das targetObject angehängt.

FeldCache-SupportScripting-Support
scriptEngineneinnein
targetObjectjanein
conditionjaja
queryjanein

Bei der Verwendung innerhalb eines JDBC-Steps beachten Sie bitte die Methode f_query.

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
PolyglotExceptionWird ausgelöst, wenn das Parsen oder Auswerten des JS-Codes fehlgeschlagen ist.
MultipleCompilationErrorsException or CompilationFailedExceptionWird ausgelöst, wenn die Kompilierung aufgrund von Quelltextfehlern fehlschlägt.
MissingPropertyExceptionTritt auf, wenn ein dynamischer Property-Aufruf mit einer unbekannten Property fehlschlägt.
MissingClassExceptionTritt auf, wenn ein dynamischer Methodenaufruf mit einer unbekannten Klasse fehlschlägt.
MissingFieldExceptionTritt auf, wenn ein dynamischer Feldaufruf mit einem unbekannten Feld fehlschlägt.
MissingMethodExceptionTritt auf, wenn ein dynamischer Methodenaufruf mit einer unbekannten Methode fehlschlägt.
GroovyRuntimeExceptionEine vom Interpreter ausgelöste Exception.
StringWriterIOExceptionBeim Anhängen an einen StringWriter ist eine IO-Exception aufgetreten, was nie vorkommen sollte.

REST

Dies ist ein sehr leistungsfähiger Step, der den Zugriff auf von Dritten bereitgestellte REST-Dienste ermöglicht.

Optional kann ein Rest-Credential verwendet werden. Auf Werte aus einem Credential kann mit #name zugegriffen werden, auf Cache-Werte entsprechend im Format $.name. Dies ist in den Feldern headers, query params sowie target URL möglich.

Standardmäßig wird der Body anhand der Eigenschaft des Content-Type-Headers gemappt. Alternativ kann der Body durch Aktivieren von Body Script vollständig manuell angepasst werden.

Bitte beachten Sie:

  • Der HTTP-Antwortcode wird in das definierte Target Object für den REST-Antwortcode geschrieben, die Antwortdaten selbst werden im Target Object für den REST-Antwortinhalt gespeichert.
  • Cookies werden in nachfolgenden REST-Steps innerhalb desselben Prozesses automatisch weitergegeben.
FeldCache-SupportScripting-Support
credentialNameneinnein
targetUrljaja
actionneinnein
queryParamsjaja
bodyjaja
bodyScriptjaja
headersjaja
targetObjectjanein
restResponseCodejanein
timeoutneinnein

Es ist möglich, auf ein REST-Credential zu verweisen. In diesem Fall können die in diesem Credential definierten Felder im Format #name innerhalb der Felder body, headers, query params und targetUrl verwendet werden.

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
IllegalArgumentExceptionDer angegebene URL-String ist keine gültige URI.

RSS

Ruft RSS/Atom-Feeds von HTTP/HTTPS-URLs ab und parst sie. Der Step lädt den XML-Feed-Inhalt, parst ihn in ein strukturiertes Format und speichert die normalisierten Feed-Daten zusammen mit dem HTTP-Antwortstatus im Cache.

FeldCache-SupportScripting-Support
credentialNamejanein
targetUrljanein
targetObjectjanein
restResponseCodejanein
timeoutjanein
scriptEngineneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
ResourceAccessExceptionKann bei der Ausführung einer Anfrage auftreten.
HttpStatusCodeExceptionKann bei der Ausführung einer Anfrage auftreten.
RssUrlRequiredExceptionWird ausgelöst, wenn die RSS-URL null oder leer ist.
InvalidRssUrlExceptionWird ausgelöst, wenn die URL nicht mit file: beginnt oder nicht dem Muster ^https?😕/.* entspricht.
HttpClientErrorExceptionWird ausgelöst, wenn der Antwortstatus nicht 200 ist.
JsonProcessingExceptionWird ausgelöst, wenn das Parsen des RSS-Feeds fehlschlägt.
IllegalArgumentExceptionWird ausgelöst, wenn der RSS-Feed die maximal zulässige Größe von 10 MB überschreitet.

S3

Der S3-Step bietet Methoden zum Lesen und Schreiben von Daten in S3.

FeldCache-SupportScripting-Support
actionneinnein
credentialNameneinnein
fields.pathjanein
fields.targetObjectjanein
fields.keyjanein
fields.contentjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
S3BucketRequiredExceptionDer S3-Bucket ist leer oder null.
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
IOExceptionSignalisiert, dass eine I/O-Exception irgendeiner Art aufgetreten ist. Diese Klasse ist die allgemeine Klasse für Exceptions, die durch fehlgeschlagene oder unterbrochene I/O-Operationen entstehen.
NoSuchKeyExceptionDer angegebene S3-Key existiert nicht.
InvalidObjectStateExceptionDas Objekt ist archiviert und bis zur Wiederherstellung nicht zugänglich.
SdkExceptionBasisklasse für alle Exceptions, die vom SDK ausgelöst werden können (Dienst und Client). Kann für Catch-all-Szenarien verwendet werden.
SdkClientExceptionWenn clientseitig ein Fehler auftritt, etwa ein I/O-bezogener Fehler, das Fehlschlagen beim Abrufen von Credentials usw.
S3ExceptionBasisklasse für alle Dienst-Exceptions. Unbekannte Exceptions werden als Instanz dieses Typs ausgelöst.
NoSuchBucketExceptionDer angegebene Bucket existiert nicht.

Security

Dieser Step verwendet AES-256 GCM für die Ver- und Entschlüsselung.

FeldCache-SupportScripting-Support
actionneinnein
variablesjanein
methodneinnein
credentialNameneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
JsonMappingExceptionChecked Exception, die schwerwiegende Probleme beim Mapping von Inhalten signalisiert, die von I/O-Problemen auf niedriger Ebene zu unterscheiden sind.
NoSuchAlgorithmExceptionDiese Exception wird ausgelöst, wenn ein bestimmter kryptografischer Algorithmus angefordert wird, in der Umgebung aber nicht verfügbar ist.
InvalidKeySpecExceptionDies ist die Exception für ungültige Schlüsselspezifikationen.
NoSuchPaddingExceptionDiese Exception wird ausgelöst, wenn ein bestimmtes Padding-Verfahren angefordert wird, in der Umgebung aber nicht verfügbar ist.
InvalidKeyExceptionDies ist die Exception für ungültige Schlüssel (ungültige Kodierung, falsche Länge, nicht initialisiert usw.).
InvalidAlgorithmParameterExceptionDies ist die Exception für ungültige oder ungeeignete Algorithmusparameter.
IllegalBlockSizeExceptionDiese Exception wird ausgelöst, wenn die Länge der an eine Blockchiffre übergebenen Daten nicht stimmt, d. h. nicht zur Blockgröße der Chiffre passt.
BadPaddingExceptionDiese Exception wird ausgelöst, wenn für die Eingabedaten ein bestimmtes Padding-Verfahren erwartet wird, die Daten aber nicht korrekt aufgefüllt sind.

Set Variables

Weist einer oder mehreren Variablen feste, statische Werte zu. Es werden nur Literalwerte unterstützt - keine Ausdrücke oder dynamischen Berechnungen. Dieser Step ist deutlich schneller als die Verwendung von Groovy, JavaScript oder Python, da das Laden von Laufzeit-Skripten entfällt.

Information

Verwenden Sie bei Strings keine Anführungszeichen. Geben Sie einfach den gewünschten Wert ein, ohne ihn mit "-Zeichen zu umschließen.

Slack

Der Slack-Step ermöglicht das Senden von Nachrichten an Slack-Channels. Optional bietet er die Möglichkeit, Vorlagen zu verwenden.

FeldCache-SupportScripting-Support
credentialNameneinnein
messagejaja
localeneinnein
textTemplatejanein
variablesjanein
channelIdjaja
targetObjectjanein
oldestTimestampjaja
messagesPerPageneinja
numberOfPagesneinja
cursorneinja

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IOExceptionSignalisiert, dass eine I/O-Exception irgendeiner Art aufgetreten ist. Diese Klasse ist die allgemeine Klasse für Exceptions, die durch fehlgeschlagene oder unterbrochene I/O-Operationen entstehen.
SlackApiExceptionHTTP-API-Exceptions, entweder auf Client- oder Serverseite.

SMTP

Der SMTP-Step ermöglicht das Senden von E-Mails aus einem Flowy-Prozess. Er erfordert ein SMTP-Credential bzw. eine Vorlage. Innerhalb des Credentials stehen die folgenden Timeouts zur Verfügung:

  • connectionTimeout: der Wert für das Verbindungs-Timeout in Millisekunden. Standard ist ein unbegrenztes Timeout.
  • timeout: der Wert für das Lese-Timeout in Millisekunden. Standard ist ein unbegrenztes Timeout.
  • writeTimeout: der Wert für das Schreib-Timeout in Millisekunden. Standard ist ein unbegrenztes Timeout.

Die folgenden Variablen sind zwingend erforderlich:

  • to: die E-Mail-Adresse der Empfänger
  • subject: der Betreff der E-Mail
  • from: die E-Mail-Adresse des Absenders - bitte beachten Sie, dass dieser Wert vom SMTP-Server häufig überschrieben wird und daher möglicherweise nicht übernommen wird

Bei Bedarf können weitere Variablen übergeben werden.

Der SMTP-Step unterstützt außerdem Dateianhänge.

FeldCache-SupportScripting-Support
tojanein
fromjanein
ccjanein
bccjanein
credentialNamejanein
textTemplateneinnein
localeneinnein
asyncneinnein
variablesjanein
attachments.namejanein
attachments.contentjanein
attachments.contentTypeneinnein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
MessagingExceptionDie Basisklasse für alle von den Messaging-Klassen ausgelösten Exceptions.

SSH

Ermöglicht die Kommunikation mit einem SSH-Server.

FeldCache-SupportScripting-Support
credentialNamejanein
commandjanein
timeoutneinnein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
JschExceptionBei allen Problemen mit dem Jsch-Dienst.

Storage

Ermöglicht das schnelle und effektive Speichern und Abrufen von Daten (sowohl einfache Strings als auch komplexe JSON-Objekte). Die Datensätze werden in der Flowy-Datenbank gespeichert und regelmäßig durch einen eigenen Job bereinigt.

Bitte beachten Sie, dass bei einem Lookup das targetObject auf null gesetzt wird, wenn der Key nicht gefunden wird oder bereits abgelaufen ist.

FeldCache-SupportScripting-Support
scriptEngineneinnein
keyjaja
targetObjectjanein
expiresInjaja
valuejaja

Dieser Step kann dieselben Exceptions (kombiniert) wie die Groovy- und JavaScript-Steps auslösen.

Stripe Connect

Integriert die Zahlungsplattform Stripe, um Zahlungsvorgänge, Kundenverwaltung und Finanztransaktionen durchzuführen.

FeldCache-SupportScripting-Support
credentialNamejanein
actionneinnein
targetObjectjanein
fields.balanceTransactionIdjanein
fields.typejanein
fields.amountjanein
fields.currencyjanein
fields.paymentMethodIdjanein
fields.confirmationMethodjanein
fields.descriptionjanein
fields.customerIdjanein
fields.paymentIntentIdjanein
fields.paymentMethodjanein
fields.receiptEmailjanein
fields.cancellationReasonjanein
fields.emailjanein
fields.namejanein
fields.phonejanein
fields.sourcejanein
fields.chargeIdjanein
fields.reasonjanein
fields.refundIdjanein
fields.disputeIdjanein
fields.activejanein
fields.productIdjanein
fields.methodjanein
fields.payoutIdjanein
fields.statusjanein

Switch

Die Switch-Struktur bietet eine bedingungsbasierte Ablaufsteuerung. Sie dient außerdem als Ersatz für if/else.

Die Script Engine kann auf dieser Ebene definiert werden.

Jeder switch muss mindestens eine Bedingung enthalten. Diese Bedingung ist in der ausgewählten Skriptsprache zu formulieren.

Jede Bedingung wird einmal ausgewertet: Trifft sie zu, wird der zugehörige Codeblock ausgeführt und die Auswertung beendet.

Ein else-Zweig kann definiert werden, indem "else" als Bedingung gesetzt wird. Dieser wird ausgeführt, wenn keine der anderen Bedingungen zutrifft.

FeldCache-SupportScripting-Support
scriptEngineneinnein
conditionsjaja

Throw Exception

Der Throw-Exception-Step ist ein Control Step, der den Prozess absichtlich fehlschlagen lässt, indem er eine konfigurierte Exception auslöst.

FeldCache-SupportScripting-Support
exceptionneinnein
messageneinnein
cacheValuesjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
Configured exceptionDie durch die Eigenschaft exception definierte Exception, mit der konfigurierten Nachricht als Detailtext.

Tika

Ermöglicht das Extrahieren von reinem Text und Metadaten aus Dokumenten oder das Erkennen des MIME-Typs eines Dokuments mithilfe von Apache Tika. Die Quelle muss auf eine Datei verweisen, die bereits im Cache gespeichert ist (typischerweise durch einen vorherigen Step wie REST, S3 oder File Read geladen).

FeldCache-SupportScripting-Support
actionneinnein
action.EXTRACT_TEXT_AND_METADATA
sourceObjectjanein
targetTextjanein
targetMetadatajanein
action.DETECT_DOCUMENT_TYPE
sourceObjectjanein
targetObjectjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
TikaExceptionWird ausgelöst, wenn Tika das Dokument nicht parsen kann (z. B. bei beschädigter oder passwortgeschützter Datei).
IOExceptionWird ausgelöst, wenn der Quell-Cache-Eintrag nicht als Binärstream gelesen werden kann.
SAXExceptionWird ausgelöst, wenn der SAX-Content-Handler beim Sammeln des extrahierten Textes fehlschlägt.
IllegalArgumentExceptionWird ausgelöst, wenn sourceObject nicht auf einen gültigen Cache-Dateieintrag aufgelöst werden kann.

Time Handler

Stellt Hilfsfunktionen zur Manipulation und Konvertierung von Zeitwerten bereit. Der Step unterstützt die Konvertierung zwischen Zeitformaten, die Berechnung von Zeitdifferenzen und die Anwendung von Rundungsstrategien bei der Umrechnung von Zeit in Minuten.

FeldCache-SupportScripting-Support
actionneinnein
fields.roundingTypeneinnein
fields.convertsneinnein
fields.converts.sourceObjectjanein
fields.converts.targetObjectjanein
fields.baseTimejanein
fields.compareTimejanein
fields.formatneinnein
fields.targetObjectjanein

Timer

Der Timer-Step bietet eine komfortable Möglichkeit, Zeitspannen effizient zu erfassen und zu messen.

FeldCache-SupportScripting-Support
actionneinnein
targetObjectjanein
startTimejanein

Toon

Konvertiert Daten zwischen den Formaten JSON, XML und TOON. TOON (Token-Oriented Object Notation) ist ein kompaktes, menschenlesbares Datenformat, das darauf ausgelegt ist, den Token-Verbrauch zu reduzieren und dabei strukturierte Daten zu erhalten. TOON ist ein kompaktes Serialisierungsformat für Daten, das für die Workflow-Verarbeitung optimiert ist.

FeldCache-SupportScripting-Support
actionneinnein
convertsneinnein
sourceObjectjanein
targetObjectjanein

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
JsonProcessingExceptionUngültiges JSON-Format in den Quelldaten
JsonMappingExceptionJSON-Struktur konnte bei der Konvertierung nicht gemappt werden
XMLStreamExceptionUngültiges XML-Format in den Quelldaten

Try/Catch

Dieser Step ermöglicht die Behandlung von Exceptions, die während der Ausführung von Steps auftreten. Er enthält:

  • einen Try-Block - dessen Ausführung versucht wird.
  • einen oder mehrere Catch-Blöcke: diese werden ausgeführt, wenn die konfigurierte Exception während der Ausführung beliebiger Steps innerhalb des Try-Blocks auftritt.
  • einen Finally-Block - wird unabhängig vom Ergebnis ausgeführt.

Tritt eine Exception auf, für die kein passender Catch-Block definiert ist, fährt Flowy mit dem nächsten Step nach dem Try/Catch-Step fort (sofern vorhanden).

Die Reihenfolge, in der die Exceptions definiert sind, ist wichtig, da die erste passende abgefangen wird. Daher sollte die spezifischste zuerst und die allgemeineren später definiert werden.

Details zur Verwendung von Try/Catch bei JavaScript-Exceptions finden Sie in der Beschreibung des JavaScript-Steps.

Twilio

Der Twilio-Step ermöglicht das Senden von Textnachrichten über den Dienst Twilio. Optional können Vorlagen verwendet werden.

FeldCache-SupportScripting-Support
credentialNameneinnein
messagejaja
localeneinnein
textTemplatejanein
variablesjanein
fromjaja
tojaja

Dieser Step kann eine Exception auslösen:

NameBeschreibung
RestClientExceptionBasisklasse für Exceptions, die vom HTTP-Client ausgelöst werden, wenn eine Anfrage aufgrund einer Server-Fehlerantwort, eines Fehlers beim Dekodieren der Antwort oder eines I/O-Fehlers auf niedriger Ebene fehlschlägt.

Unset Variables

Der Unset-Step bietet eine einfache Möglichkeit, Variablen, die nicht mehr benötigt werden, zur Laufzeit zu entfernen.

FeldCache-SupportScripting-Support
variablesjanein

Until

Dieser Step stellt eine Schleife bereit, die ausgeführt wird, bis die Query-Bedingung wahr wird. Anders als der While-Step, der so lange läuft, wie die Bedingung wahr ist, läuft der Until-Step so lange, wie die Bedingung falsch ist, und endet, sobald sie wahr wird.

FeldCache-SupportScripting-Support
scriptEngineneinnein
queryjaja
stepsneinnein

User

Der User-Step stellt die erforderlichen Methoden zum Erstellen, Lesen und Validieren von Benutzerkonten und Credentials bereit. Dies ermöglicht die flexible Verwendung von Flowy-Konten innerhalb der Prozesse.

FeldCache-SupportScripting-Support
actionneinnein
fields.targetObjectjanein
fields.emailjanein
fields.namejanein
fields.rolesjanein
fields.passwordjanein
fields.userIdjanein
fields.apiKeyjanein
fields.rolesjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
InvalidUserIdExceptionDie User-ID ist keine gültige Zahl.

UUID

Dieser Step erzeugt eine UUID in Version 4.

FeldCache-SupportScripting-Support
targetObjectjanein

Validation Rule

Validiert Daten anhand vordefinierter Validierungsregeln. Der Step wendet Einschränkungen auf Feldebene an, um Datenstruktur, Typen und Werte zu prüfen, und liefert entweder Validierungsfehler oder einen Erfolgsindikator zurück.

FeldCache-SupportScripting-Support
sourceObjectjanein
validationNameneinnein
strictModeneinnein
targetObjectjanein

Dieser Step kann Exceptions auslösen:

NameBeschreibung
ValidationStepExceptionWird ausgelöst, wenn strictMode true ist und ein Validierungsfehler auftritt.
IllegalStateExceptionWird ausgelöst, wenn in der Vererbung von Validierungsregeln ein Zyklus erkannt wird.
HttpNotFoundExceptionWird ausgelöst, wenn eine in einem Step per Name referenzierte Validierung nicht gefunden werden kann.

Wait

Pausiert die Prozessausführung, bis ein oder mehrere Child-Events abgeschlossen sind. Der Step fragt die Status der Child-Events in regelmäßigen Abständen ab und fährt erst fort, nachdem alle angegebenen Events einen Endzustand erreicht haben (successful, failed, timeout oder validation failed).

FeldCache-SupportScripting-Support
childEventIdsjanein
pollingIntervalMsneinnein
timeoutMsneinnein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
WaitStepTimeoutExceptionWird ausgelöst, wenn das Timeout erreicht wird.

WhatsApp

Der WhatsApp-Step ermöglicht das Senden von WhatsApp-Nachrichten über ein konfiguriertes WhatsApp-Credential.

FeldCache-SupportScripting-Support
credentialNamejanein
messagejaja
localejanein
textTemplatejanein
variablesjaja
actionneinnein
tojaja

Dieser Step kann eine der folgenden Exceptions auslösen:

NameBeschreibung
IOExceptionSignalisiert, dass eine I/O-Exception irgendeiner Art aufgetreten ist. Diese Klasse ist die allgemeine Klasse für Exceptions, die durch fehlgeschlagene oder unterbrochene I/O-Operationen entstehen.
RuntimeExceptionBei jedem unerwarteten internen Fehler (ungültige Eingabe, Skriptfehler, Probleme bei der Auflösung von Credentials).

While

Dieser Step bietet eine einfache Möglichkeit, Schleifen umzusetzen. Es muss eine Query-Bedingung definiert werden; die Schleife wird so lange wiederholt, wie diese Bedingung wahr ist.

FeldCache-SupportScripting-Support
scriptEngineneinnein
queryjaja
stepsneinnein

XLS

Ermöglicht die Konvertierung von Daten zwischen JSON und XLS (in beide Richtungen).

FeldCache-SupportScripting-Support
actionneinnein
sourcejanein
includeHeadersneinnein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
IOExceptionWird ausgelöst, wenn ein I/O-Fehler auftritt.

XML

Konvertiert Daten bidirektional zwischen den Formaten XML und JSON. Der Step unterstützt das Parsen von XML-Strings in JSON-Objekte sowie das Serialisieren von JSON-Objekten/-Strings in das XML-Format und ermöglicht so eine nahtlose Integration zwischen XML-basierten und JSON-basierten Systemen.

FeldCache-SupportScripting-Support
actionneinnein
sourceObjectjanein
targetObjectjanein

XSLT

Ermöglicht die Konvertierung eines XML-Dokuments mithilfe von XSLT in ein anderes Format.

FeldCache-SupportScripting-Support
xmljanein
xsltjanein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
IOExceptionFalls die Transformation fehlgeschlagen ist.

YAML

Ermöglicht die Konvertierung von Daten zwischen JSON und YAML (in beide Richtungen).

FeldCache-SupportScripting-Support
actionneinnein
sourcejanein
targetObjectjanein

Dieser Step kann eine Exception auslösen:

NameBeschreibung
JsonProcessingExceptionBei allen Problemen bei der Verarbeitung (Parsen, Generieren) von JSON-Inhalten, die keine reinen I/O-Probleme sind.
JsonMappingExceptionSignalisiert schwerwiegende Probleme beim Mapping von Inhalten, die von I/O-Problemen auf niedriger Ebene zu unterscheiden sind.

ZIP

Ermöglicht das Komprimieren bzw. Dekomprimieren von Cache-Objekten.

FeldCache-SupportScripting-Support
targetObjectjanein
actionneinnein
fields.entries.namejanein
fields.entries.pathjanein
fields.entries.contentjanein
sourceObjectjanein
targetObjectjanein