Modellierung

Wenn Sie GBTEC Work Orchestrator verwenden, bietet Ihnen GBTEC Process Design mehr Möglichkeiten als zuvor. Sie können Sendeaufgaben mit einer E-Mail-Vorlage und Benutzeraufgaben mit benutzerdefinierten Formularen erstellen, um Ihre Benutzer bei der Erledigung ihrer Aufgaben zu unterstützen. Darüber hinaus können Sie Aufgaben mithilfe von REST-Abfragen oder Skripten automatisieren.

Über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile können Sie direkt von GBTEC Work Orchestrator zu GBTEC Process Design wechseln. Wenn Sie einen Prozess in GBTEC Process Design modellieren, können Sie ihn bereits in GBTEC Work Orchestrator testen, bevor Sie ihn veröffentlichen.

Welche Prozesse werden mir in GBTEC Work Orchestrator angezeigt?

GBTEC Work Orchestrator ist direkt mit GBTEC Process Design verbunden. Prozesse, die Ihnen in GBTEC Work Orchestrator zur Ausführung angezeigt werden, wurden zuvor in GBTEC Process Design entsprechend definiert. Dies erfolgt über das Diagrammattribut Ausführbarer Prozess in der Attributgruppe Automatisierung der Diagrammtypen Business Process Model and Notation (BPMN) und Ereignisgesteuerte Prozesskette (EPK). Diese Checkbox muss aktiviert sein, damit der Prozess als ausführbar gilt. Wie Sie die Attribute eines Diagramms einsehen können, erfahren Sie hier.

Der hier aufgeführte Screenshot zeigt das Attribut "Ausführbarer Prozess" in der Attributgruppe "Automatisierung" eines Diagramms.

In der produktiven Umgebung von GBTEC Work Orchestrator werden Ihnen Prozesse normalerweise nur angezeigt, solange die zugehörigen Diagramme in GBTEC Process Design veröffentlicht sind. Diese Prozesse sehen Sie dann in den ProcessApps. Wenn Sie ein Diagramm in GBTEC Process Design depublizieren, können Sie keine neuen Vorgänge für den zugehörigen Prozess mehr anlegen. Solange noch laufende Vorgänge dieses Prozesses vorhanden sind, bleibt die ProcessApp weiterhin sichtbar. Wenn keine laufenden Vorgänge mehr vorhanden sind, wird die ProcessApp aus der Übersicht entfernt. Das gilt aktuell auch dann, wenn noch archivierte Vorgänge vorhanden sind. Wenn Sie Änderungen an einem Diagramm vornehmen, muss dieses erneut veröffentlicht werden, damit die Änderungen im zugehörigen Prozess der produktiven Umgebung sichtbar werden.

Hinweis

In der Entwicklungs- und Testumgebung von GBTEC Work Orchestrator kann ein Prozess bereits in seiner Entstehung verfolgt werden. Dies geschieht parallel zur Modellierung des zugehörigen Diagramms in GBTEC Process Design.

Bemerkung

Beachten Sie, dass die in GBTEC Process Design definierten Zugriffsbeschränkungen auch die Sichtbarkeit von Prozessen in GBTEC Work Orchestrator beeinflussen. So werden Ihnen Diagramme, die in GBTEC Process Design über eine Zugriffsbeschränkung verfügen, in GBTEC Work Orchestrator nur dann als Prozess angezeigt, wenn Sie auch Teil dieser Zugriffsbeschränkung sind.

Zusätzlich besteht für ProcessApp Administratoren die Möglichkeit festzulegen, ob andere Benutzergruppen Aufgaben manuell starten dürfen. Dazu kann die Checkbox Manuellen Start von Aufgaben erlauben aktiviert werden. Dies ermöglicht das Starten von bisher nicht gestarteten, aktiven Segmenten einer Aufgabe.

Der Screenshot zeigt die ausgewählte Checkbox "Manuellen Start von Aufgaben erlauben".

Mit der Option Start-Formular nicht anzeigen können Sie festlegen, dass Sie beim Erstellen neuer Vorgänge eines Prozesses direkt zur Prozessausführungsansicht weitergeleitet werden und das Eingabeformular übersprungen wird. In diesem Fall wird der neue Vorgang nach dem Prozessnamen und dem Zeitstempel benannt.

Der Screenshot zeigt die ausgewählte Checkbox "Start-Formular nicht anzeigen".

ProcessApp Modellierung

Wie kann ich meine ProcessApp Symbole konfigurieren?

Das Symbol, mit dem Ihr Prozess im ProcessApp-Bereich von GBTEC Work Orchestrator angezeigt wird, kann in den Attributen des entsprechenden Diagramms in GBTEC Process Design angepasst werden. Um ein Icon zu konfigurieren, navigieren Sie in GBTEC Process Design zu den Details des entsprechenden Diagramms. Hier finden Sie unter der Attributgruppe Automatisierung die Attribute ProcessApp-Farbe und ProcessApp-Symbol.

Mit dem Attribut ProcessApp-Farbe können Sie die Farbe des Symbols festlegen. Als Wert geben Sie den RGB-Farbcode der gewünschten Farbe an, z.B. 255,0,0 für Rot. Sie können auch HEX-Codes verwenden, z.B. #FF0000 für Rot oder den entsprechenden Farbnamen verwenden. Die Farbe der Aufgabensymbole entspricht immer der Farbe der ProcessApp.

Mit dem Attribut ProcessApp-Symbol legen Sie fest, welches Icon Sie für den entsprechenden Prozess verwenden möchten. Sie können ein Icon auswählen, das Ihnen von Font Awesome (v6.5.1) kostenlos zur Verfügung gestellt wird. Geben Sie dazu den Namen des entsprechenden Icons als Wert Ihres Attributs an.

Ein Beispiel könnte folgendermaßen aussehen:

Der hier aufgeführte Screenshot zeigt ein Beispiel für die Attribute "ProcessApp-Farbe" und "ProcessApp-Symbol".

Das Ergebnis sieht dann wie folgt aus:

Hier ist die Umsetzung des zuvor gezeigten Beispiels dargestellt.

Das Standardsymbol für undefinierte Prozesse ist ein Diagrammsymbol.

Bemerkung

Sie können alle kostenlosen Icons der Font Awesome Version 5.15.4 verwenden. Ausgenommen sind markenrechtlich geschützte Icons.

Wie kann ich die Sichtbarkeit von allen Vorgängen in der ProcessApp einschränken?

Wenn Sie die Sichtbarkeit von Vorgängen des Prozesses im Bereich ProcessApp von GBTEC Work Orchestrator einschränken möchten, können Sie dies während der Modellierung festlegen. Navigieren Sie dazu in GBTEC Process Design zu den Details des entsprechenden Diagramms. Hier finden Sie unter der Attributgruppe Automatisierung das Attribut Analyst.

Mit dem Attribut Analyst können Sie mehrere Benutzer oder Benutzergruppen pflegen, die nach der Veröffentlichung des Prozesses alle Vorgänge der ProcessApp einsehen können. Dabei ist zu beachten, dass die Benutzer der Rolle ProcessApp Analyst zugeordnet sein müssen. Alle anderen Benutzer können nur die ihnen zugewiesenen Vorgänge der ProcessApp sehen.

Der Screenshot zeigt das gepflegte Attribut "Analyst".

Wenn Sie die Benutzer oder die Benutzergruppen im Attribut Analyst ändern, können die zuvor gepflegten Benutzer und Benutzergruppen nicht mehr auf alle Vorgänge der ProcessApp zugreifen.

Wie kann ich den Zugriff auf eine ProcessApp und deren Vorgänge einschränken?

Als ProcessApp Creator haben Sie die Möglichkeit, eine Zugriffsbeschränkung auf eine ProcessApp und deren Vorgänge festzulegen. Gehen Sie dazu in GBTEC Process Design, checken Sie ein Diagramm aus und klicken Sie auf eine leere Stelle in der Leinwand. Öffnen Sie anschließend in der Registerkarte Details in der rechten Seitenleiste die Attributgruppe Governance. Im Eingabefeld Zugriffsbeschränkung können Sie Benutzer und/oder Benutzergruppen eingeben, die Zugriff auf den Prozess haben.

Der Screenshot zeigt das Eingabefeld "Zugriffsbeschränkung" in den Details eines ausgecheckten Diagramms in GBTEC Process Design.

Alle nicht gepflegten Benutzer und/oder Benutzergruppen haben anschließend keinen Zugriff auf den modellierten Prozess und können weder Vorgänge initiieren noch die zugehörige ProcessApp einsehen.

Bemerkung

Benutzer mit der Rolle ProcessApp Administrator können zugriffsbeschränkte ProcessApps sowohl im Bereich ProcessApps als auch im Menüeintrag Administration einsehen. Jedoch werden archivierte Vorgänge nicht angezeigt.

Wie kann ich den Zugriff auf die Ablaufansicht für Vorgänge einschränken?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie den Zugriff auf die Ablaufansicht von Vorgängen einschränken. Öffnen Sie dazu in GBTEC Process Design ein Diagramm, checken Sie es aus und klicken Sie auf eine freie Stelle in der Leinwand. Wählen Sie anschließend in der Registerkarte Details in der rechten Seitenleiste die Attributgruppe Automatisierung aus. Im Eingabefeld Zugriff auf Vorgangsablauf können Sie Benutzer und/oder Benutzergruppen eingeben, die Zugriff auf die Ablaufansicht der zugehörigen Vorgänge erhalten sollen.

Der Screenshot zeigt das Eingabefeld "Zugriff auf Vorgangsablauf" zur Beschränung des Zugriffs auf den Vorgangsablauf.

Die gepflegten Benutzer haben anschließend sowohl Zugriff auf die Ablaufansicht ihrer eigenen Vorgänge als auch auf die Vorgänge anderer Benutzer. Alle nicht gepflegten Benutzer und/oder Benutzergruppen können ausschließlich auf die Ablaufansicht ihrer eigenen Vorgänge zugreifen.

Zusätzlich können Sie die Option Vorgangsersteller von Ablaufansicht ausschließen aktivieren. Wenn diese Option aktiviert ist, können nicht gepflegte Benutzer und/oder Benutzergruppen ausschließlich Vorgänge zu diesem Prozess initiieren und deren Aufgaben bearbeiten. Sie haben jedoch keinen Zugriff auf die Ablaufansicht jeglicher Vorgänge dieses Prozesses.

Nachdem Sie eine Einschränkung der Ablaufansicht vorgenommen haben, müssen Sie das Diagramm einchecken und veröffentlichen. Die Einschränkung gilt nur für initiierte Vorgänge im Bereich Veröffentlichung.

Hinweis

Bitte beachten Sie, dass gepflegte Benutzer und/oder Benutzergruppen bei der aktivierten Option Vorgangsersteller von Ablaufansicht ausschließen nicht von der Zugriffsbeschränkung betroffen sind, auch wenn sie eigene Vorgänge initiiert haben.

Bemerkung

Bitte beachten Sie, dass Benutzer mit der Benutzerrolle Administrator die Ablaufansicht auch dann sehen können, wenn die Ansicht vom ProcessApp Creator eingeschränkt wurde und der Administrator nicht zu den gepflegten Benutzern und/oder Benutzergruppen zählt.

Process Execution Editor

Formular-Editor

Mit dem Formular-Editor können Sie Formulare für Benutzeraufgaben in GBTEC Process Design erstellen. Im Editor können verschiedene Formularfelder konfiguriert werden, die bei der Ausführung des Prozesses als Aufgabenformular erscheinen und vom Verantwortlichen der Aufgabe ausgefüllt werden können.

Wie kann ich mein eigenes Formular erstellen und konfigurieren?

Um den Formular-Editor in GBTEC Process Design öffnen zu können, muss das entsprechende Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss vom Typ Benutzer sein.

Wenn alle Bedingungen erfüllt sind, öffnen Sie das Kontextmenü der Aktivität und selektieren Sie den Eintrag Formular-Editor.

Hier ist das Kontextmenü einer Aktivität mit dem Eintrag "Öffne Formular-Editor" abgebildet.

Alternativ können Sie den Formular-Editor auch über die Registerkarte Optionen in der rechten Seitenleiste öffnen. Wählen Sie dazu die entsprechende Aktivität. Dort finden Sie in der Option Process Execution Editor die Schaltfläche Editor öffnen. Wenn Sie diese auswählen, gelangen Sie zum Formular-Editor.

Der Screenshot zeigt die Detailsansicht einer Aktivität mit Formular Editor.

In beiden Fällen öffnet sich ein Dialogfenster mit dem Formular-Editor. Auf der linken Seite des Editors finden Sie alle möglichen Formularfelder, welche Ihnen bei der Erstellung bzw. Konfiguration Ihres Formulars zur Verfügung stehen. In der Mitte des Dialogfensters finden Sie eine Vorschau Ihres Formulars, welche alle Elemente enthält, die Ihrem Formular bereits hinzugefügt wurden. Wenn Sie ein solches Element ausgewählt haben, werden Ihnen in der rechten Seitenleiste des Dialogs die Details zu diesen Element angezeigt.

Der hier aufgeführte Screenshot zeigt den Formular-Editor.

Im Formular-Editor können Sie neue Elemente hinzufügen, die Position der einzelnen Felder anpassen, die Eigenschaften der Felder bearbeiten und auch Felder aus dem Formular entfernen.

Um Ihre Änderungen zu übernehmen, bestätigen Sie Ihre Eingaben mit der Funktion Speichern in der rechten oberen Ecke des Formular-Editors. Über das direkt daneben angeordnete X-Symbol verlassen Sie den Formular-Editor und Ihre Änderungen werden verworfen.

Der hier aufgeführte Screenshot zeigt die beiden Option "Speichern" und das "X-Symbol" zum abbrechen.

Sobald Sie Ihr konfiguriertes Formular gespeichert haben und das entsprechende Diagramm alle für GBTEC Work Orchestrator relevanten Anforderungen erfüllt, wird Ihnen Ihr Formular in dem automatisch generierten Aufgabenformular angezeigt.

Hier ist das konfigurierte Formular im Formular einer Aufgabe dargestellt.

Die entsprechende Aufgabe muss jedoch einem Benutzer zugewiesen werden, damit das Formular von diesem Benutzer in GBTEC Work Orchestrator verwendet werden kann.

Sie können in Ihrem Formular auch Prozessvariablen verwenden. Diese müssen dann in je zwei geschweifte Klammern eingeschlossen werden (z.B. {{exampleVariable}}). Wenn Sie das Datenobjekt mit REST-Abfragen erhalten haben, können Sie diese ebenfalls verwenden. Um im folgenden Beispiel einer JSON-Datei die Postleitzahl des Datenobjekts Adresse zu erhalten, verwenden Sie adresse.plz. Hierbei können Sie beliebig viele Datenobjekte ineinander verschachteln.

Hier ist eine Beispiel JSON Datei mit einem Datenobjekt abgebildet.

Hinweis

Wenn ein Datenobjekt in der JSON-Datei ohne verschachtelte Strukur einen Punkt im Namen enthält, wird dieser durch einen Unterstrich ersetzt. Wenn im oben genannten Beispiel adresse.plz nicht verschachtelt ist, wird der Name automatisch in adresse_plz umbenannt. Nach der Ersetzung müssen Sie den Unterstrich (oder mehrere Unterstriche, falls im Namen vorhanden) verwenden, um die Variable(n) weiter verwenden zu können.

Warnung

Achten Sie darauf, Ihr Diagramm nach jeder Änderung im Formular-Editor zu speichern. Ansonsten gehen Ihre Änderungen verloren.

Bemerkung

Wenn Sie Fehler in Ihrem Aufgabenformular gemacht haben und dieses speichern, wird das Formular nicht automatisch geschlossen. Stattdessen werden Sie durch ein Symbol auf fehlerhafte Eingaben hingewiesen. Nach der Korrektur kann das Aufgabenformular gespeichert und geschlossen werden.

Wie kann ich ein Startformular erstellen?

Als ProcessApp Creator haben Sie die Möglichkeit, ein Startformular mit dem Formular-Editor zu erstellen. Dazu müssen Sie während der Modellierung in GBTEC Process Design das Startereignis mit dem Ereignistyp Nachricht typisieren. Diese Option finden Sie in den Details des Startereignisses in der rechten Seitenleiste.

Anschließend können Sie mit einem Rechtsklick auf das Startereignis im Kontextmenü die Option Formular-Editor öffnen. Alternativ können Sie den Editor über die Option Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste öffnen.

Der Screenshot zeigt die Option "Formular-Editor" im Kontextmenü eines Startereignisses vom Typ "Nachricht".

Nach einem Klick auf die Option öffnet sich der Formular-Editor. In diesem können Sie Ihr Startformular konfigurieren, indem Sie neue Elemente hinzufügen und die Eigenschaften der Felder anpassen. Auf diese Weise können Sie relevante Prozessinformationen direkt im Startformular festlegen und den Prozess sofort starten.

Nachdem Sie Ihr konfiguriertes Formular gespeichert und den Prozess ausgeführt haben, wird Ihr Formular im automatisch generierten Aufgabenformular in GBTEC Work Orchestrator angezeigt.

Um das Startformular bei der Erstellung neuer Vorgänge anzuzeigen, muss die Option Start-Formular nicht anzeigen in der Registerkarte Details in der rechten Seitenleiste des Prozesses deaktiviert sein. Wenn Sie anschließend einen neuen Vorgang erstellen, wird das Startformular als Benutzeraufgabe angezeigt. Nachdem Sie das Formular ausgefüllt und auf die Schaltfläche Erstellen geklickt haben, erscheint unten rechts auf dem Bildschirm eine Benachrichtigung mit einem Link zum entsprechenden Vorgang. Darüber können Sie direkt zum Prozessablauf wechseln.

Wenn Sie die Erstellung eines neuen Vorgangs über ein Startformular abbrechen, werden Sie zur Vorgangsliste der zugehörigen ProcessApp weitergeleitet.

Hinweis

Bitte beachten Sie, dass das Startformular nur angezeigt werden kann, wenn im Prozess nur ein Startereignis modelliert wurde.

Warnung

Bitte beachten Sie, dass das Formularfeld Datei in Startformularen mit wiederholenden Abschnitten nicht angezeigt wird und daher in der Prozessausführungsansicht in Aufgabenformularen nicht verfügbar ist.

Wie kann ich ein automatisch generiertes Formular erstellen?

Als ProcessApp Creator haben Sie die Möglichkeit, mit der Hilfe von unserem KI-Assistenten Arty ein automatisch generiertes Formular zu erstellen. Wählen Sie dazu in GBTEC Process Design in der linken Menüleiste den Menüeintrag Diagramme aus und öffnen Sie ein Diagramm aus dem gewünschten Repository. Nach dem Öffnen checken Sie das Diagramm aus, um es bearbeiten zu können. Markieren Sie anschließend im Diagramm eine Aktivität und typisieren Sie diese als Aufgabentyp Benutzer in den Details in der rechten Seitenleiste. Anschließend können Sie mit einem Rechtsklick auf die markierte Aktivität oder über den Process Execution Editor in den Optionen in der rechten Seitenleiste den Formular-Editor öffnen.

Wenn für Sie die KI-gestützten Funktionen von Arty aktiviert sind und noch kein Formular zu der Aktivität existiert, bietet Ihnen der Formular-Editor die Möglichkeit, automatisch ein Formular erstellen zu lassen. Vor dem Generieren sehen Sie ein Eingabefeld, welches auf Basis der Beschreibung der Aktivität vorbelegt sein kann. Dieses Eingabefeld dient als Grundlage für die KI und kann frei angepasst werden. Wie Sie am besten mit Arty kommunizieren können, finden Sie hier. Sobald Sie die Eingabe bestätigt haben, klicken Sie auf die Schaltfläche Formular erstellen, um den Erstellungsprozess zu starten.

Zusätzlich haben Sie als ProcessApp Creator die Möglichkeit, über die Schaltfläche Bild hochladen zum Beispiel eine Datei, welche die Informationen enthält, die später im Prozess hinterlegt werden sollen, hochzuladen. Arty erkennt die darin enthaltenen Daten automatisch und überträgt diese in die Formularfelder.

Der Screenshot zeigt die Option "Formular erzeugen" im Formular-Editor für eine Aktivität, wenn Arty aktiviert ist.

Anschließend wird Ihre Anfrage bearbeitet und Sie erhalten innerhalb kurzer Zeit das automatisch generierte Formular. Hier können Sie weitere Änderungen vornehmen, wie z.B. relevante Prozessinformationen hinzufügen oder die Position einzelner Formularfelder verändern.

Speichern Sie abschließend Ihr Formular über die Schaltfläche Speichern*oben rechts. Um das Formular zu verwerfen, klicken Sie bitte auf das direkt daneben angeordnete *X-Symbol.

Tipp

Sie haben außerdem die Möglichkeit, Formularfelder automatisch mit vorhandenen Prozessvariablen zu verknüpfen. Arty erkennt dabei Prozessvariablen, die bereits in der Variablenliste des Prozesses existieren, und fügt diese auf Wunsch automatisch in das aktuelle Formular ein. Die Auswahl oder Anweisung erfolgt direkt über den Chat, sodass keine manuelle Zuordnung notwendig ist. Bereits vorhandene Variablen werden wiederverwendet, neue Variablen können bei Bedarf automatisch erzeugt werden.

Hinweis

Bitte beachten Sie, dass die KI-gestützten Funktionen von Arty nicht in der Standardlizenz enthalten sind. Kontaktieren Sie Ihren Ansprechpartner für weitere Informationen. Bitte beachten Sie auch die Hinweise zur Nutzung der KI-Funktion.

Tipp

Um ein genaueres Formular für Ihren Prozess zu generieren, empfehlen wir Ihnen, die relevanten Informationen in der Beschreibung der Aktivität anzugeben.

Welche Formularfelder gibt es und wie füge ich ein neues Formularfeld zu meinem Formular hinzu?

Sie können Ihrem Formular folgende Felder hinzufügen:

  • Variabel Liste: Eine Liste aller von Ihnen erstellten Variablen um bestehende Prozessvariablen als Formularfelder anzeigen und hinzufügen können, um diese ohne erneute Definition wiederzuverwenden.

  • Text: Einfaches Textfeld für die Ein- und Ausgabe von alphanumerischen Zeichenketten.

  • Textbereich: Textfeld für die Ein- und Ausgabe von längeren Texten, das auch die Formatierung des Textes ermöglicht.

  • Formel: Formel zur Berechnung numerischer oder logischer Werte.

  • Nummer: Feld zur Ein- und Ausgabe von numerischen Werten. Ermöglicht auch die Ein- und Ausgabe von Zahlen mit Nachkommastellen.

  • Einzelauswahl: Auswahlfeld mit mehreren vorgegebenen Auswahlmöglichkeiten, aus denen der Benutzer genau eine auswählen kann. Dies kann als Liste oder Drop-Down-Menü konfiguriert werden.

  • Mehrfachauswahl: Auswahlfeld mit mehreren vorgegebenen Auswahlmöglichkeiten, aus denen der Benutzer eine oder mehrere auswählen kann. Dies kann als Liste oder Drop-Down-Menü konfiguriert werden.

  • Datum: Feld zur Ein- und Ausgabe von Datumswerten.

  • Boolean: Feld mit binärer Entscheidungsmöglichkeit.

  • E-Mail: Feld, um E-Mail-Adressen einzutragen oder dazustellen, damit die Benutzer schneller eine E-Mail versenden können.

  • URL: Feld zur Anzeige oder Abfrage von Webadressen.

  • Benutzer/-gruppen: Feld zur Eingabe eines Benutzers oder einer Benutzergruppe.

  • Datei: Feld zum Hochladen von Dateien.

  • HTML: Mit dem HTML-Feld können Sie klare und hilfreiche Anweisungen anzeigen, die Sie beim Ausfüllen des Formulars unterstützen. Dazu gehören Textformatierungen, das Integrieren von Links und die Verwendung einfacher HTML-Tags.

  • Abschnitt: Feld, um die Anordnung mehrerer Spalten in einem Formular zu definieren.

Um ein Formularfeld in das Formular einzufügen, öffnen Sie zunächst den Formular-Editor in der entsprechenden Aktivität. Wählen Sie dann in der linken Seitenleiste das gewünschte Formularfeld aus, das Sie dem Formular hinzufügen möchten.

Der hier aufgeführte Screenshot zeigt wie ein neues Formularfeld der Liste durch Klicken hinzugefügt wird.

Am Ende der Formularvorschau wird dann ein entsprechender Eintrag eingefügt. Wenn Sie diesen Eintrag auswählen, können Sie ihn anschließend nach Ihren Bedürfnissen weiter anpassen. Alternativ haben Sie die Möglichkeit, einen Eintrag per Drag & Drop direkt in das Formularfeld zu ziehen.

Der hier aufgeführte Screenshot zeigt wie ein neues Formularfeld der Liste durch Drag & Drop hinzugefügt wird.

Der Eintrag wird dann unterhalb der blauen Linie eingefügt.

Der hier aufgeführte Screenshot zeigt wie das neue Formularfeld eingefügt wurde.

Welche Attribute hat ein Formularfeld?

Die Formularfelder können über die Attribute in der rechten Seitenleiste konfiguriert werden. Einige Attribute sind für alle Formularfelder verfügbar:

  • ID: Wenn Sie ein neues Formularfeld einfügen, erhält dieses automatisch eine ID. Diese steht als Prozessvariable in Ihrem Prozess zur Verfügung und wird benötigt, um die Eingaben zuordnen zu können. Wenn Sie möchten, können Sie die ID des Formularfeldes anpassen. Dies kann insbesondere dann hilfreich sein, wenn Sie die Eingabe weiterhin benötigen. Alternativ können Sie auch eine bereits vorhandene Prozessvariable als ID eingeben. Der aktuelle Wert dieser Variable wird dann in Ihrem Formular angezeigt.

  • Label: Mit dem Label geben Sie Ihrem Formularfeld einen Namen, der dem Benutzer oben links im Formularfeld angezeigt wird.

  • Platzhalter: Hier geben Sie einen Text ein, der dem Benutzer erklärt, was er in das Feld eingeben soll (z.B. eine Beschreibung oder ein Beispiel).

  • Pflichtfeld: Wenn dieses Attribut aktiviert ist, muss der Benutzer eine Eingabe machen, um das Formular korrekt auszufüllen.

  • Schreibgeschützt: Wenn dieses Attribut aktiviert ist, kann der Benutzer den Wert dieser Variablen nicht ändern. Dies wird empfohlen, wenn Sie einen Wert nur ausgeben möchten.

  • Versteckt: Dieses Attribut kann verwendet werden, wenn der Benutzer das Formularfeld nicht sehen soll. Wenn ein Feld als Versteckt markiert ist, werden keine Validierungen (z.B. Pflichtfeld, minimale Länge, usw.) durchgeführt.

  • Wiederholungen: [Nur für das Formularfeld „Abschnitt“] Wenn dieses Attribut aktiviert ist, wird das konfigurierte Abschnittsfeld bei der Ausführung des Prozesses so oft wiederholt, wie es definiert ist.

  • Hinweis: Dieses Attribut kann verwendet werden, um dem Benutzer einen Hinweis unter dem Formularfeld anzuzeigen.

  • Standardwert: Dieses Attribut kann verwendet werden, um einen Standardwert für eine Prozessvariable vorzugeben. Alternativ kann auch eine Formel verwendet werden, welche zunächst evaluiert wird. Prozessvariablen müssen dabei in zwei geschweifte Klammern eingeschlossen werden.

Darüber hinaus können Sie für einzelne Attributtypen festlegen, ob diese immer oder nur unter bestimmten Bedingungen gelten sollen. Dies betrifft die Attribute Versteckt, Pflichtfeld und Schreibgeschützt. Hierfür stehen zwei Optionen zur Verfügung. Mit Immer verhält sich das entsprechende Formularfeld stets wie angegeben. Mit Bedingt können Sie eine Formel angeben, die festlegt, unter welcher Bedingung das Formularfeld dieses Verhalten übernimmt.

Nachfolgend sehen Sie ein Beispiel, wie dies für das Attribut Versteckt aussehen kann. Hier würden Sie dieses Feld immer dann ausblenden, wenn die Prozessvariable value größer als 5 ist.

Der hier aufgeführte Screenshot zeigt die Möglichkeiten zur bedingten Ausblendung von Formularfeldern.

Wenn Sie die Attribute nach Ihren Wünschen bearbeitet haben, können Sie die Änderungen mit der Funktion Speichern übernehmen.

Bemerkung

Bitte beachten Sie, dass die Werte der Eigenschaften für alle Inhaltssprachen gelten und nicht für jede Sprache individuell definiert werden können.

Im Folgenden werden die zusätzlichen Attribute der einzelnen Formularfelder erläutert.

Variabel Liste

Als Benutzer mit der Rolle ProcessApp Creator können Sie im Formular-Editor direkt auf die Liste der verfügbaren Prozessvariablen zugreifen. Ein Klick auf das Symbol Liste der verfügbaren Variablen öffnen öffnet ein Seitenpanel, in dem alle noch nicht verwendeten Variablen in alphabetischer Reihenfolge angezeigt werden. Gleichzeitig wird die Detailansicht im Formular-Editor automatisch geschlossen.

Jede in der Liste angezeigte Variable kann als Formularfeld verwendet und per Klick oder Drag-and-drop in das Formular eingefügt werden. Sobald eine Variable hinzugefügt wurde, wird sie in der Liste ausgegraut dargestellt und steht nicht mehr zum erneuten Hinzufügen zur Verfügung. Wird jedoch die ID der Variable im Formular geändert, erscheint sie in der Liste wieder als verfügbar. Wenn mehrere Variablen mit derselben ID vorhanden sind, wird in der Liste nur eine Instanz dieser Variable angezeigt.

Über das Suchfeld oberhalb der Variablenliste können Sie gezielt nach Variablennamen suchen. Während der Eingabe wird die Liste automatisch in Echtzeit aktualisiert, sodass nur noch die Variablen angezeigt werden, deren Namen mit Ihrer Eingabe übereinstimmen.

Der Screenshot zeigt die Option, im Formular-Editor eine Liste aller von Ihnen erstellten Prozessvariablen anzuzeigen.

Bemerkung

Bitte beachten Sie, dass Arty nicht mit der Liste der Prozessvariablen interagiert.

Wenn Sie einen Abschnitt erstellen und diesem mindestens eine ID oder ein Label zuweisen, wird dieser Abschnitt automatisch in die Liste der Prozessvariablen aufgenommen.

Sie können nicht nur ganze Abschnitte, sondern auch einzelne Felder innerhalb eines Abschnitts verwenden. Wenn Sie in der Liste der Prozessvariablen einen Abschnitt aufklappen, sehen Sie die enthaltenen Felder, zum Beispiel street, streetno und city. Wenn Sie eines dieser Felder auswählen oder in den Arbeitsbereich ziehen, wird nur dieses Feld in das Formular eingefügt und nicht der gesamte Abschnitt.

Textfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Text.

Das einfache Textfeld kann verwendet werden, um alphanumerische Zeichenketten zu speichern oder anzuzeigen.

Es hat zusätzlich folgende Attribute:

  • Muster: Hier kann ein regulärer Ausdruck eingegeben werden. Anhand dieses Ausdrucks wird geprüft, ob die Benutzereingabe gültig ist.

  • Feldgröße: Dieser Wert gibt an, wie breit das Eingabefeld ist (gemessen in Zeichen).

  • Minimale Länge: Geben Sie hier einen Wert ein, den die Länge einer Eingabe nicht unterschreiten darf.

  • Maximale Länge: Geben Sie hier einen Wert ein, den die Länge einer Eingabe nicht überschreiten darf.

Hinweis

Ein Beispiel für ein Muster könnte ([a-z]\d\d)+ sein. Dieser reguläre Ausdruck bezeichnet eine Kombination aus einem Kleinbuchstaben, gefolgt von 2 Ziffern. Diese Kombination kann dabei beliebig oft wiederholt werden. Ein Beispiel für eine gültige Benutzereingabe wäre a14b22 oder q41c96b74e44. Andere Eingaben wie A54b41 oder 1d23 wären ungültig.

Im Folgenden werden die Grundlagen eines regulären Ausdrucks demonstriert:

Ein regulärer Ausdruck (RegExp) ist ein Muster, das in Zeichenketten gesucht wird.

  • Syntax: /Muster/Flags

  • Muster: Die Zeichenkette, nach der gesucht werden soll.

  • Flags: Modifikatoren wie g (global), i (Fall ignorieren), m (mehrzeilig).

Erlaubte Muster:

Zeichenklassen:

  • .: Jedes Zeichen außer Zeilenumbruch

  • \d: Ziffer (0-9)

  • \w: Alphanumerisches Zeichen und Unterstrich

  • \s: Leerraumzeichen (Leerzeichen, Tab, usw.)

Gruppierungen und Alternativen:

  • (...): Gruppierung

  • |: Oder-Operator

Quantifizierer:

  • *: 0 oder mehr

  • +: 1 oder mehr

  • ?: 0 oder 1

  • {n}: Genau n

  • {n,}: Mindestens n

  • {n,m}: Zwischen n und m

Anker:

  • ^: Beginn der Eingabe

  • $: Ende der Eingabe

Beispiele:

  • ^\d{5}$: Fünfstellige Zahl

  • ^(https?|ftp)://: URL, die mit http, https oder ftp beginnt

  • ^[a-zA-Z]+$: Nur Buchstaben (Groß- und Kleinbuchstaben)

Unter den folgenden Links finden Sie weitere Information über die verwendete RegExp-Klasse, die der Browser im Hintergrund für die Musterüberprüfung verwendet, sowie den zugehörigen Online-Tester für RegExp einsehen:

Das obige Textfeld resultiert in einem laufenden Vorgang wie folgt:

Hier ist das "Textfeld" im Formular abgebildet.

Textbereichsfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Textbereich.

Der Textbereich kann verwendet werden, wenn ein einfaches Textfeld nicht ausreicht, um den gesamten Text darzustellen. Es kann z.B. für längere Kommentare oder Bemerkungen verwendet werden. Der Inhalt kann ebenfalls formatiert werden (z.B. fett, kursiv, usw.).

Zusätzlich verfügt es über die folgenden Attribute:

  • Höhe: Dieser Wert gibt in Pixel an, wie hoch das Textbereichsfeld sein soll.

  • Breite: Dieser Wert gibt in Pixel an, wie breit das Textbereichsfeld sein soll.

Das obige Textbereichsfeld resultiert in einem laufenden Vorgang wie folgt:

Hier ist der "Textbereich" im Formular abgebildet.

Formelfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Formel.

Das Formelfeld kann verwendet werden, wenn eine Berechnung durchgeführt werden soll. Die Berechnung kann mit numerischen, logischen und Datumswerten erfolgen. Eine Übersicht über die zur Verfügung stehenden Formeln finden Sie in diesem Kapitel.

Es verfügt zusätzlich über das folgende Attribut:

  • Formel: Hier geben Sie die Formel an, die Sie verwenden möchten. Für die Berechnung sind ggf. ein oder mehrere Parameter erforderlich.

Bemerkung

Bitte beachten Sie, dass das Attribut Schreibgeschützt für das Formelfeld immer aktiviert ist. Der Benutzer kann die Formel somit im Formular nicht mehr anpassen.

Bei der Eingabe der Formel ist Folgendes zu beachten:

  • Die Formel muss in Großbuchstaben eingegeben werden.

  • Parameter müssen in Klammern gesetzt und durch Kommas getrennt werden.

  • Wenn Sie bereits definierte Prozessvariablen verwenden möchten, müssen Sie diese in zwei geschweifte Klammern setzen (z.B. {{VariableName}}).

  • Andere Parameter, die keine Prozessvariablen sind, müssen nicht in geschweifte Klammern gesetzt werden.

In einem laufenden Vorgang berechnet die Formel aus dem obigen Beispiel die Anzahl der Abwesenheitstage, sobald das Start- und das Enddatum eingegeben wurde. Das Ergebnis wird wie folgt dargestellt:

Hier ist das "Formelfeld" im Formular abgebildet.

Nummernfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Nummer.

Das Nummernfeld kann verwendet werden, wenn der Benutzer numerische Werte eingeben soll. Die Verwendung von Dezimalzahlen ist ebenfalls möglich.

Es verfügt zusätzlich über die folgenden Attribute:

  • Minimaler Wert: Geben Sie hier einen Wert ein, den die Benutzereingabe nicht unterschreiten darf.

  • Maximaler Wert: Geben Sie hier einen Wert ein, den die Benutzereingabe nicht überschreiten darf.

  • Schrittintervall: Stellen Sie hier das Schrittintervall ein, in welchem der Wert erhöht oder verringert werden kann. Wenn keine Eingabe erfolgt, wird standardmäßig das Intervall 1 verwendet. Der Benutzer kann jedoch auch Werte unabhängig vom Schrittintervall eingeben, solange diese zwischen dem minimalen und dem maximalen Wert liegen.

Für das Nummernfeld „Vertragsnummer“ im obigen Beispiel sind der minimale und der maximale Wert so gepflegt, dass im Formular eine vierstellige Zahlenfolge eingegeben werden muss.

Hier ist das "Nummernfeld" im Formular abgebildet.

Einzelauswahlfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Einzelauswahl.

Das Einzelauswahlfeld kann verwendet werden, wenn der Benutzer aus mehreren vorgegebenen Optionen genau eine auswählen soll.

Es verfügt zusätzlich über die folgenden Attribute:

  • Auswahlmöglichkeiten: Hier werden Sie alle Auswahlmöglichkeiten aufgelistet, aus denen der Benutzer später auswählen kann. Die einzelnen Auswahlmöglichkeiten werden durch einen Zeilenumbruch getrennt.

  • Einzelauswahl als Drop-Down darstellen: Wenn Sie dieses Attribut aktivieren, werden die Auswahlmöglichkeiten in einem Drop-Down-Menü angezeigt. Diese können per Mausklick ausgewählt oder manuell eingegeben werden. Sobald der Benutzer eine Eingabe vornimmt, wird die Anzahl der Auswahlmöglichkeiten auf die Eingabe reduziert. Entspricht die Eingabe keiner Auswahlmöglichkeit, so werden keine Auswahlmöglichkeiten angezeigt. Ist das Attribut nicht aktiviert, werden alle Optionen des Auswahlfeldes untereinander aufgelistet.

Das Einzelauswahlfeld „Abwesenheitsgrund“ aus dem obigen Beispiel wird in einem laufenden Vorgang als Drop-Down-Menü angezeigt. Im Folgenden Beispiel wurde die Option „Jahresurlaub“ ausgewählt:

Hier ist das "Einzelauswahlfeld" im Formular abgebildet.

Keys

Wenn Sie Keys für die Auswahlmöglichkeiten definieren, wird beim Abschluss der Benutzeraufgabe statt dem expliziten Namens der Auswahlmöglichkeit der jeweilige Key als Prozessvariable verwendet. Notieren Sie den Key jeder Auswahlmöglichkeit mit einem Semikolon als Trennzeichen. Wenn Sie mehrere Semikola in einer Auswahlmöglichkeit verwenden, wird das letzte Semikolon als Trennzeichen für den Key erkannt. Beispielsweise soll das Feld „Abteilung“ mit den Auswahlmöglichkeiten Entwicklung, Human Resources und Sales mit den Keys dev, hr und sls definiert werden:

Die Definition eines Single Choice Formfelds mit Keys wird hier illustriert.

Wenn nun ein Benutzer in einem Vorgang für dieses Feld die Auswahl Entwicklung trifft, wird als Prozessvariable "dev" gespeichert.

Hier ist die Prozessvariable eines Single Choice Formfelds mit Key gezeigt.

Sie können die Auswahlmöglichkeiten auch dynamisch gestalten. In diesem Fall können die Auswahlmöglichkeiten von Prozessvariablen stammen, die sich ändern können.

Der Screenshot zeigt die Verwendung von dynamischen Auswahlmöglichkeiten.

Die Notation {{…}} wird dabei als Platzhalter verwendet und durch den Wert der jeweiligen Prozessvariablen ersetzt.

Handelt es sich bei dem als Platzhalter verwendeten Wert der jeweiligen Prozessvariablen um eine durch Komma separierte Zeichenkette, so wird die Zeichenkette durch ein Komma getrennt. Jedes aufgeteilte Element wird dann als unabhängige Auswahlmöglichkeit angezeigt, die sich in Abhängigkeit von anderen Variablen ändern kann.

Der Screenshot zeigt die Verwendung von einer einzelnen Prozessvariable im Auswahlfeld.

In diesem Beispiel wird {{MehrereEntwicklungen}} als Auswahlmöglichkeit angegeben, die eine durch Komma separierte Zeichenkette ist. Das Aufgabenformular zeigt nun alle Auswahlmöglichkeiten an, die in der Prozessvariablen enthalten sind.

Warnung

Bitte beachten Sie, dass Auswahlfelder mit Mehrfachauswahl keine doppelten oder inhaltlich identischen Einträge enthalten dürfen. Wenn beispielsweise derselbe Key wie "EU" mehrfach aufgeführt wird oder unterschiedliche Auswahlmöglichkeiten wie "Deutschland;EU", "Österreich;EU" und "Spanien;EU" intern dem gleichen Key zugeordnet sind, kann dies zu unerwartetem Verhalten führen. Um eine fehlerfreie Nutzung sicherzustellen, sollten alle Auswahlmöglichkeiten eindeutig und klar voneinander unterscheidbar sein.

Tipp

Auch für dynamische Auswahlmöglichkeiten können Keys mit einem Semikolon definiert werden. Wie bei den statischen Auswahlmöglichkeiten wird der entsprechende Key für die ausgewählte Auswahlmöglichkeit als Prozessvariable gespeichert.

Mehrfachauswahlfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Mehrfachauswahl.

Das Mehrfachauswahlfeld kann verwendet werden, wenn der Benutzer aus mehreren vorgegebenen Optionen eine oder mehrere auswählen soll. Das Beispiel zeigt das Mehrfachauswahlfeld „Belieferung der internationalen Standorte“.

Ein Mehrfachauswahlfeld verfügt zusätzlich über die folgenden Attribute:

  • Auswahlmöglichkeiten: Hier werden Sie alle Auswahlmöglichkeiten aufgelistet, aus denen der Benutzer später auswählen kann. Die einzelnen Auswahlmöglichkeiten werden durch einen Zeilenumbruch getrennt.

  • Mehrfachauswahl als Drop-Down-Menü darstellen: Wenn Sie dieses Attribut aktivieren, werden Ihren Benutzern die Auswahlmöglichkeiten in einem Drop-Down-Menü angezeigt. Ist das Attribut nicht aktiviert, werden alle Optionen des Auswahlfeldes untereinander aufgelistet.

  • Ausgewählte Werte als String-Array speichern: Dieses Attribut legt fest, ob die Prozessvariable als String oder als String-Array gespeichert werden soll. Wenn Sie dieses Attribut deaktivieren, wird die Prozessvariable als String gespeichert. Wenn Sie es aktivieren, wird die Prozessvariable als String-Array gespeichert. Dieses Array enthält die ausgewählten Antworten. Beachten Sie, dass Sie Keys definieren können, die im String-Array gespeichert werden. Dies wird unter dem nächsten Screenshot erklärt.

Das obige Mehrfachauswahlfeld „Unterstützte Geschäftsstellen“ ist im Formular nur sichtbar, wenn die Prozessvariable contract.international den Wert TRUE hat. Die Prozessvariable kann über das Booleanfeld „Beliefert der Partner internationale Standorte?“ auf TRUE gesetzt werden. In einem laufenden Vorgang zeigt sich dies wie folgt:

Hier ist das "Mehrfachauswahlfeld" im Formular abgebildet.

Keys

Wenn Sie das Attribut Ausgewählte Werte als String-Array speichern aktiviert haben, können Sie für jede Auswahlmöglichkeit Keys definieren, die als Prozessvariable gespeichert werden. Notieren Sie den Key nach jeder Auswahlmöglichkeit mit einem Semikolon als Trennzeichen. Wenn Sie mehrere Semikola in einer Auswahlmöglichkeit verwenden, wird das letzte Semikolon als Trennzeichen zum Key erkannt. Beispielsweise soll das Feld „Abteilung“ mit den Auswahlmöglichkeiten Entwicklung, Human Resources und Sales mit den Keys dev, hr und sls definiert werden.

Bemerkung

Bitte beachten Sie, dass dieses Attribut definiert, ob die Prozessvariable als einzelner String oder als String-Array gespeichert wird. Ist das Attribut deaktiviert, erfolgt die Speicherung der Variable als einfacher String. Wird das Attribut hingegen aktiviert, wird die Prozessvariable als String-Array gespeichert, das die ausgewählten Antworten enthält. Darüber hinaus besteht die Möglichkeit, spezifische Keys zu definieren, die im String-Array abgelegt werden.

Die Definition eines Multiple Choice Formfelds mit Keys wird hier illustriert.

Wenn nun ein Benutzer in einem Vorgang für dieses Feld die Auswahl Entwicklung und Human Resources trifft, wird als Prozessvariable ["dev", "hr"] gespeichert.

Hier ist die Prozessvariable eines Multiple Choice Formfelds mit Keys gezeigt.

Sie können die Auswahlmöglichkeiten auch dynamisch gestalten. In diesem Fall können die Auswahlmöglichkeiten von Prozessvariablen stammen, die sich ändern können.

Der Screenshot zeigt die Verwendung von dynamischen Auswahlmöglichkeiten.

Die Notation {{…}} wird dabei als Platzhalter verwendet und durch den Wert der jeweiligen Prozessvariablen ersetzt.

Handelt es sich bei dem als Platzhalter verwendeten Wert der jeweiligen Prozessvariablen um eine durch Komma separierte Zeichenkette, so wird die Zeichenkette durch ein Komma getrennt. Jedes aufgeteilte Element wird dann als unabhängige Auswahlmöglichkeit angezeigt, die sich in Abhängigkeit von anderen Variablen ändern kann.

Der Screenshot zeigt die Verwendung von einer einzelnen Prozessvariable im Auswahlfeld.

In diesem Beispiel wird {{MehrereEntwicklungen}} als Auswahlmöglichkeit angegeben, die eine durch Komma separierte Zeichenkette ist. Das Aufgabenformular zeigt nun alle Auswahlmöglichkeiten an, die in der Prozessvariablen enthalten sind.

Warnung

Bitte beachten Sie, dass Auswahlfelder mit Mehrfachauswahl keine doppelten oder inhaltlich identischen Einträge enthalten dürfen. Wenn beispielsweise derselbe Key wie "EU" mehrfach aufgeführt wird oder unterschiedliche Auswahlmöglichkeiten wie "Deutschland;EU", "Österreich;EU" und "Spanien;EU" intern dem gleichen Key zugeordnet sind, kann dies zu unerwartetem Verhalten führen. Um eine fehlerfreie Nutzung sicherzustellen, sollten alle Auswahlmöglichkeiten eindeutig und klar voneinander unterscheidbar sein.

Tipp

Auch für dynamische Auswahlmöglichkeiten können Keys mit einem Semikolon definiert werden. Wie bei den statischen Auswahlmöglichkeiten wird der entsprechende Key für die ausgewählte Auswahlmöglichkeit als Prozessvariable gespeichert.

Datumsfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Datum.

Das Datumsfeld kann verwendet werden, wenn der Benutzer ein Datum eingeben soll oder wenn ein entsprechendes Datum ausgegeben werden soll.

Im obigen Beispiel werden dem Benutzer in einem laufenden Vorgang zwei Datumsfelder angezeigt. Das gewünschte Datum kann aus dem Drop-Down-Kalender ausgewählt werden:

Hier ist das "Datumsfeld" im Formular abgebildet.

Booleanfeld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds Boolean.

Das Booleanfeld kann für eine binäre (ja/nein) oder logische (wahr/falsch) Abfrage verwendet werden.

Es verfügt zusätzlich über das folgende Attribut:

  • Boolean als Kontrollkästchen anzeigen: Wenn dieses Attribut aktiviert ist, ändert sich die grafische Darstellung der Abfrage. Anstelle eines Umlegeschalters wird im Formular ein Kontrollkästchen angezeigt.

Für das Booleanfeld im obigen Beispiel ist das Kontrollkästchen aktiviert. Es erscheint in einem laufenden Vorgang wie folgt:

Hier ist das "Booleanfeld" im Formular abgebildet.

Bemerkung

Wenn Sie ein Boolean Feld als Pflichtfeld markieren, muss der Benutzer bei der Prozessausführung in GBTEC Work Orchestrator dieses Feld aktivieren, um mit der Prozessausführung fortzufahren. Ist dies nicht der Fall, wird der Benutzer durch eine Fehlermeldung darauf hingewiesen.

E-Mail-Feld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds E-Mail.

Ein E-Mail-Feld kann verwendet werden, um eine E-Mail-Adresse abzufragen oder anzuzeigen.

Ein E-Mail-Feld verfügt zusätzlich über die folgenden Attribute:

  • Muster: Hier können Sie einen regulären Ausdruck eintragen. Anhand dieses Ausdrucks wird geprüft, ob die Benutzereingabe eine gültige Antwort ist. Wenn Sie kein eigenes Muster eingeben, wird ein Standardmuster verwendet, welches prüft, ob es sich bei der Eingabe um eine gültige E-Mail-Adresse handelt.

  • Minimale Länge: Geben Sie hier einen Wert ein, den die Länge Ihrer Eingabe nicht unterschreiten darf.

  • Maximale Länge: Geben Sie hier einen Wert ein, den die Länge Ihrer Eingabe nicht überschreiten darf.

  • Breite: Dieser Wert gibt an, wie breit das E-Mail-Feld in Pixel sein soll.

Im folgenden Beispiel sehen Sie ein E-Mail-Feld mit aktivierter Option Schreibgeschützt. In diesem Fall wird die E-Mail als Link dargestellt. Wenn Sie diesen anklicken, werden Sie zu Ihrem E-Mail-Programm weitergeleitet und können dort eine E-Mail verfassen.

Hier ist das "E-Mail Feld" im Formular abgebildet.

URL-Feld

Der hier aufgeführte Screenshot zeigt die Detailübersicht des Formularfelds URL.

Ein URL-Feld kann verwendet werden, um eine Webadresse aufzurufen oder einzugeben.

Ein URL-Feld verfügt zusätzlich über die folgenden Attribute:

  • Muster: Hier können Sie einen regulären Ausdruck eintragen. Anhand dieses Ausdrucks wird geprüft, ob die Benutzereingabe eine gültige Antwort ist. Wenn Sie kein eigenes Muster eingeben, wird ein Standardmuster verwendet, welches prüft, ob es sich bei der Eingabe um eine gültige URL handelt.

  • Minimale Länge: Geben Sie hier einen Wert ein, den die Länge Ihrer Eingabe nicht unterschreiten darf.

  • Maximale Länge: Geben Sie hier einen Wert ein, den die Länge Ihrer Eingabe nicht überschreiten darf.

  • Breite: Dieser Wert gibt an, wie breit das URL-Feld in Pixel sein soll.

Im folgenden Beispiel sehen Sie ein URL-Feld mit aktivierter Option Schreibgeschützt. In diesem Fall wird die URL als Link dargestellt. Wenn Sie diesen auswählen (mit Strg + Mausklick), wird der Link in einem neuen Tab in Ihrem Browser geöffnet.

Hier ist das "URL Feld" im Formular abgebildet.

Benutzer/-gruppe

Dieser Screenshot zeigt die Detailübersicht des Formularfelds Benutzer/-gruppe.

Ein Benutzer/-gruppe-Feld kann verwendet werden, um einen Benutzer oder eine Benutzergruppe einzugeben und somit in den Vorgang einzubinden. Bitte beachten Sie, dass nur ein Benutzer (bzw. eine Benutzergruppe) pro Feld eingegeben werden kann. Mit der Eingabe erhalten Sie eine Vorschlagsliste, aus der Sie den gewünschten Benutzer/die gewünschte Benutzergruppe auswählen können. Bei einem Benutzer wird die E-Mail-Adresse und bei einer Benutzergruppe der Name als Prozessvariable gespeichert.

In der Version 7.17.0 stehen Ihnen nun erweiterte Benutzerinformationen als JSON-Objekt für Benutzer und Benutzergruppen zur Verfügung. Dieses JSON-Objekt enthält die ID, den Namen, die E-Mail-Adresse sowie die Information, ob es sich um einen einzelnen Benutzer oder eine Benutzergruppe handelt. Um auf die einzelnen Benutzerinformationen zuzugreifen, verwenden Sie die zugewiesene ID des Formularfelds Benutzer/Benutzergruppen als Prozessvariable und greifen Sie auf die entsprechende Variable zu.

Beispiel:

Sie haben dem Formular das Formularfeld Benutzer/Benutzergruppe hinzugefügt und die ID des Formularfelds als employee festgelegt. Das JSON-Objekt für den Benutzer wird nun wie folgt generiert {"id": "employee", "name": "John Doe", "email": "jd@gbtec.com", "type": "ProcessApp Participant"}. Um auf die einzelnen Informationen zuzugreifen, können Sie auf die Variablen wie folgt zugreifen:

  • .name

  • .email

  • .type

Sie möchten nun die E-Mail-Adresse des Benutzers ermitteln. Verwenden Sie dazu employee.email. Das Ergebnis in diesem Beispiel ist jd@gbtec.com.

Wenn die ID des Formularfelds mit dem Attribut Identifizierer einer Rolle im Prozess übereinstimmt, wird das Formularfeld mit dieser Rolle verknüpft. Der Anfangswert des Formularfelds ist dann der Benutzer oder die Gruppe, die die Rolle im aktuellen Fall innehat. Wird im Formularfeld ein anderer Benutzer oder eine andere Gruppe ausgewählt, übernimmt dieser Benutzer beziehungsweise diese Gruppe die Rolle, sobald die entsprechende Aufgabe abgeschlossen ist.

Hier ist das "Benutzer/-gruppe Feld" im Formular abgebildet.

Sie können im Eingabefeld Auf Benutzergruppen beschränken bestimmte Benutzergruppen hinterlegen, die anschließend als Chips angezeigt werden. In der Prozessausführung können dann nur Personen eingetragen werden, die Mitglied einer dieser Gruppen sind. So wird sichergestellt, dass ausschließlich Personen aus den ausgewählten Benutzergruppen für die Ausführung des Prozesses berücksichtigt werden.

Der Screenshot zeigt Ihnen die Option eine Benutzergruppe im Formeditor zu hinterlegen.

Datei

Dieser Screenshot zeigt die Detailübersicht des Formularfelds "Datei".

Das Dateifeld kann verwendet werden, um Dateien hochzuladen und sie so in den Vorgang einzubinden.

Bemerkung

Bitte beachten Sie dabei, dass für das Formularfeld und das zugehörige Dokument derselbe Identifizierer angegeben werden muss, damit das Formularfeld funktioniert. Das Dokument stellt dann entweder das Eingabe- oder das Ausgabedokument dar.

Wenn Sie ein Formularfeld als schreibgeschützt definieren und das Eingabedokument mit demselben Identifizierer wie das Formularfeld verknüpft ist, werden die Aktionen dieses Eingabedokuments auf die schreibgeschützten Felder angewendet. Ein nicht schreibgeschütztes Formularfeld erlaubt Ihnen die Eingabe von Daten, während ein bedingt schreibgeschütztes Feld unter bestimmten Bedingungen bearbeitet werden kann.

Wenn ein Ausgabedokument denselben Identifizierer wie ein Formularfeld hat, werden die Aktionen des Dokuments auf das Feld angewendet. Wenn mehrere Dokumente denselben Identifizierer haben, werden nur die Aktionen des Dokuments sichtbar, dessen Identifizierer im Formularfeld angezeigt wird.

Wenn Sie das Formular zum Hochladen von Dateien verwenden und eine Datei zum Hochladen ausgewählt haben, wird Ihnen eine visuelle Darstellung des Dateinamens der hochgeladenen Datei angezeigt. Dies erleichtert die Identifizierung der hochgeladenen Datei während des Hochladevorgangs.

Bemerkung

Sie können dasselbe Dateifeld sowohl für Eingabe- als auch Ausgabedokumente verwenden. Wenn sowohl Eingabe als auch Ausgabe denselben Identifizierer für das Dateifeld haben und nur die Eingabe ein Dokument enthält, können Sie das Dateifeld verwenden, um die Eingabedatei herunterzuladen. Enthält dagegen die Ausgabe ein Dokument, können Sie das Dateifeld zum Herunterladen der Ausgabedatei verwenden.

Zudem können Sie für das Dateifeld definieren, welche Dateitypen für das Hochladen von Dateien erlaubt sind. Geben Sie dazu im Eingabefeld Dateitypen die erlaubten Dateitypen ein.

Der Screenshot zeigt das Eingabefeld, in dem Sie einen oder mehrere Dateitypen angeben können.

Sie haben die Möglichkeit, einen oder mehrere Dateitypen einzugeben. Wenn Sie mehrere Dateitypen angeben möchten, müssen Sie diese durch ein Komma trennen. Beachten Sie jedoch, dass dabei nur das Hochladen von Dateien mit den eingegebenen Dateitypen erlaubt ist. Darüber hinaus können Sie durch die Eingabe von image/* das Hochladen aller Bilddateien (z.B. .jpg, .png) oder über die Eingabe von text/plain das Hochladen aller Textdateien erlauben.

Bemerkung

Das Eingabefeld Dateitypen akzeptiert eine weitere Vielzahl an MIME-Typen oder Dateierweiterungen. Einen besseren Überblick über die häufig verwendeten MIME-Typen erhalten Sie hier.

Zusätzlich haben Sie die Möglichkeit, die hochgeladenen PDF-Dateien im integrierten Browser-PDF-Viewer anzeigen zu lassen, indem Sie auf die Schaltfläche Herunterladen klicken. Wenn eine hochgeladene Datei nicht von dem PDF-Viewer Ihres Browsers unterstützt wird, wird die Datei direkt heruntergeladen.

Der Screenshot zeigt die Option, PDF-Dateien direkt im integrierten Browser-Viewer zu öffnen.

Das obige Dateifeld ist in einem laufenden Vorgang wie folgt verfügbar:

Hier ist das Feld "Datei" im Formular abgebildet.

Als ProcessApp Creator haben Sie außerdem die Möglichkeit, im Dateifeld das Aufnehmen von Fotos über die Gerätekamera zu ermöglichen oder Bilddateien direkt hochzuladen. Dazu steht im Feldtyp Dateifeld eine zusätzliche Einstellung Kameraaufnahme aktivieren zur Verfügung.

Der Screenshot zeigt die Option, im Formular-Editor für das Datei Feld die Kamerafunktion zu aktivieren.

Wenn Sie diese Option aktivieren, können Sie innerhalb des Formulars ein Foto aufnehmen oder ein vorhandenes Bild aus Ihrer Galerie auswählen.

Der Screenshot zeigt die Option, innerhalb des Formulars ein Foto aufnehmen oder ein vorhandenes Bild aus Ihrer Galerie auszuwählen.

Wenn Sie das Formular absenden, wird das aufgenommene oder hochgeladene Bild zusammen mit den übrigen Formulardaten gespeichert und übermittelt.

Tipp

Auf mobilen Endgeräten wird neben dem Upload-Symbol ein Kamera-Symbol angezeigt, sofern das Gerät über eine Kamera verfügt. Wenn Sie auf dieses Symbol tippen, öffnet sich die Kamerafunktion des Geräts, und das aufgenommene Foto wird automatisch dem Formular hinzugefügt. Alternativ können Sie weiterhin eine bestehende Bilddatei aus Ihrer Galerie auswählen.

Bemerkung

Bitte beachten Sie, dass die Kamerafunktion auf Desktopgeräten in der Regel nicht verfügbar ist. In diesem Fall wird kein Kamera-Symbol angezeigt. Stattdessen können Sie über das Dateiupload-Symbol eine vorhandene Bilddatei von Ihrem Computer auswählen. Der Upload funktioniert wie gewohnt, ohne dass eine Fehlermeldung angezeigt wird.

In der Benutzerrolle ProcessApp User können Sie das Dateifeld innerhalb von wiederholbaren Abschnitten eines Formulars verwenden. So können Sie pro Wiederholung ein oder mehrere Eingabedokumente hochladen und diese Dateien später in nachfolgenden Aufgaben zuverlässig weiterverwenden. Sie haben außerdem die Möglichkeit, mehrere Eingabedokumente mit einer Aktivität zu verknüpfen und somit mehrere Dateien gleichzeitig hochzuladen.

Bemerkung

Bitte beachten Sie, dass, wenn ein Dateifeld innerhalb eines wiederholbaren Abschnitts verwendet wird und Sie in mehreren Wiederholungen jeweils eine Datei hochladen, jede dieser Dateien separat gespeichert wird.

Tipp

In späteren Aufgaben können Sie auf jede hochgeladene Datei einzeln zugreifen. Zudem können Sie jederzeit nachvollziehen, wie viele Dateien insgesamt hochgeladen wurden. Jede Datei bleibt eindeutig der jeweiligen Wiederholung zugeordnet, sodass der Zusammenhang zwischen den übrigen Eingabedaten und der hochgeladenen Datei erhalten bleibt.

Bemerkung

Bitte beachten Sie, dass auch wenn das Hochladen der Datei als Optional gekennzeichnet ist, das Verhalten unverändert bleibt.

Für eine erfolgreiche Implementierung müssen Sie jeder Datei einen Identifizierer zuweisen. Der Identifizierer des Dokuments setzt sich aus dem Identifizierer des Abschnitts und dem Identifizierer des darin enthaltenen Dateifelds zusammen. Beide Identifizierer müssen durch einen Punkt voneinander getrennt werden.

Beispiel:

Hat der wiederholbare Abschnitt den Identifizierer customerData und das darin enthaltene Dateifeld den Identifizierer contract, ergibt sich als vollständiger Identifizierer für das Eingabedokument customerData.contract.

Der Screenshot zeigt die Möglichkeit in einer ausgeführten ProcessApp, Dokumente hinzuzufügen.

Damit die Funktion korrekt genutzt werden kann, muss für das entsprechende Dokument die Checkbox Sammlung aktiviert sein. Öffnen Sie dazu in der rechten Seitenleiste die Registerkarte Details und wechseln Sie dort zum Reiter Typisierung. Aktivieren Sie anschließend die Checkbox Sammlung durch einen Klick. Erst nachdem diese Einstellung vorgenommen wurde, steht die Funktion vollständig zur Verfügung.

Der Screenshot zeigt die Checkbox "Sammlung".

In der ausgeführten ProcessApp können Sie über die Schaltfläche Section einen weiteren Abschnitt hinzufügen und diesem Abschnitt zusätzliche Dokumente zuordnen.

Der Screenshot zeigt die Möglichkeit in einer ausgeführten ProcessApp, einen weiteren Abschnitt hinzuzufügen.

Über die Schaltfläche Löschmodus aktivieren können Sie die Löschung eines Abschnitts starten. Klicken Sie anschließend auf den Papierkorb rechts neben dem Abschnitt, um die Löschung vorzunehmen. Um den Löschvorgang abzubrechen, klicken Sie auf die Schaltfläche Löschmodus deaktivieren.

Der Screenshot zeigt die Möglichkeit in einer ausgeführten ProcessApp, einen Löschvorgang vorzunehmen.

HTML

Der Screenshot zeigt die Detailübersicht des Formularfelds HTML.

Das HTML-Feld können Sie nutzen, um klare und hilfreiche Anweisungen im Formular anzuzeigen. Dazu gehören Textformatierungen, das Einfügen von Links sowie die Verwendung einfacher HTML-Tags.

Wenn Sie beispielsweise den HTML-Text <p>Willkommen, {{Vorname}} {{Nachname}}! Bitte überprüfen Sie die angegebenen Informationen sorgfältig.</p> eingeben, wird der Inhalt in der Vorschau des Formular-Editors angezeigt. Beim Ausführen des Formulars werden die Platzhalter {{Vorname}} und {{Nachname}} automatisch durch die entsprechenden Prozessvariablen ersetzt.

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie Aufgabenattribute direkt innerhalb einer Aufgabe abrufen. Verwenden Sie dazu in einem Formular innerhalb eines HTML-Feldes die Funktion getAttribute(). Diese gibt den Wert eines bestimmten Attributs zurück, beispielsweise die Aufgabenbeschreibung mit getAttribute("AT_DESCRIPTION"). Um ein Attribut in einer bestimmten Sprache auszugeben, können Sie die Sprache angeben, zum Beispiel: _task.getAttribute("AT_DESCRIPTION", "de").

Sie können außerdem den zugewiesenen Benutzer der Aufgabe über das Objekt _task.assignee abrufen. So erhalten Sie auf einfache Weise Informationen über die zuständige Person.

Folgende Attribute stehen zur Verfügung:

  • _task.assignee.name

  • _task.assignee.type

  • _task.assignee.id

Das Objekt _task.assignee können Sie in Formeln, Standardwerten oder Validierungen verwenden. So erhalten Sie die Informationen über die Person, der die Aufgabe zugewiesen ist. Alternativ können Sie auch _task.responsible.identity verwenden. Beide Möglichkeiten liefern die gleichen Daten, aber _task.assignee ist einfacher und übersichtlicher.

Sie können auch über die Aufgabenvariable auf Informationen zugreifen. Dazu verwenden Sie _task.getAttribute("AT_DESCRIPTION"). Wenn die Aufgabenvariable nicht verfügbar ist, zeigt getAttribute() null.

Sie können außerdem Attribute mit anderen Eigenschaften kombinieren. Beispielsweise können Sie _task.instance.id verwenden, um die ID des Prozesses zu sehen, zu dem die Aufgabe gehört.

Hinweis

Bitte beachten Sie, dass Sie außerdem die Möglichkeit haben, in HTML-Feldern Formeln zu verwenden, genauso wie in Formelfeldern.

Hinweis

Bitte beachten Sie, dass derzeit nur Attribute der Aufgabe selbst verfügbar sind. Verknüpfte Elemente wie Dokumente oder Risiken können nicht abgerufen werden.

Abschnitt

Der Screenshot zeigt die Detailübersicht des Formularfelds "Abschnitt".

Das Abschnittsfeld kann verwendet werden, um mehrere Abschnitte mit unterschiedlichen Spaltenlayouts zu erstellen. In den Details in der rechten Seitenleiste müssen Sie eine ID eingeben, falls die Option Wiederholungen ausgewählt ist. Andernfalls ist die ID optional. Zusätzlich können Sie ein Label und die Attribute Pflichtfeld, Schreibgeschützt und Versteckt auswählen. Sobald Sie einem Abschnitt eine ID zugewiesen haben, wird diese automatisch Bestandteil der IDs aller darin enthaltenen Formularfelder. Sie können daher ausschließlich über die Kombination aus Abschnitts-ID und Feld-ID auf die zugehörigen Formularfelder zugreifen. Wird einem Abschnitt die ID adress zugewiesen und enthält dieser ein Formularfeld mit der ID street, erfolgt der Zugriff über adress.street.

Hinweis

Bitte beachten Sie, dass beim Deaktivieren der Option Wiederholungen die zuvor eingegebene ID im Hintergrund gespeichert bleibt. Um Speicherfehler durch doppelt vergebene IDs zu vermeiden, schalten Sie die Wiederholungen kurzzeitig erneut ein, löschen die ID manuell und deaktivieren die Option anschließend ein weiteres Mal. Prüfen und aktualisieren Sie in diesem Zusammenhang auch alle Formularfelder innerhalb des Abschnitts, die auf diese ID referenzieren.

Wenn der Abschnitt als Pflichtfeld markiert ist, müssen alle Formularfelder innerhalb dieses Abschnitts vom Benutzer ausgefüllt werden. Ist ein Abschnitt als Schreibgeschützt gekennzeichnet, kann der Benutzer keine Formularfelder innerhalb dieses Abschnitts bearbeiten. Wenn der Abschnitt als Versteckt markiert ist, werden alle Formularfelder darin ausgeblendet und sind für den Benutzer nicht sichtbar.

Als ProcessApp Creator haben Sie die Möglichkeit, die Sichtbarkeit Ihres Abschnitts in der Prozessausführung zu konfigurieren. Die Sichtbarkeit bestimmt, wie der Abschnitt dargestellt wird. Navigieren Sie dazu im Formular-Editor in der rechten Seitenleiste zum Bereich Darstellung. Über das entsprechende Drop-Down-Menü können Sie festlegen, wie der Abschnitt im Vorgang angezeigt wird. Wenn Sie die Option Immer sichtbar (kein Panel) wählen, die standardmäßig hinterlegt ist, wird der Abschnitt im Vorgang immer sichtbar dargestellt und kann nicht eingeklappt werden. Mit Standardmäßig geöffnet ist der Abschnitt zunächst geöffnet, kann jedoch manuell eingeklappt werden. Wenn Sie Standardmäßig geschlossen wählen, ist der Abschnitt im Vorgang zunächst eingeklappt und kann bei Bedarf manuell geöffnet werden.

Der Screenshot zeigt, wie die Sichtbarkeit eines Abschnitts im Formular-Editor konfiguriert werden kann.

Bei Abschnitten, die entweder als Standardmäßig geöffnet oder Standardmäßig geschlossen konfiguriert sind, wird auf der rechten Seite ein Pfeilsymbol angezeigt. Über dieses Symbol kann der Abschnitt aufgeklappt oder zugeklappt werden.

Der Screenshot zeigt die Möglichkeit einen Abschnitt auszuklappen.

Bemerkung

Bitte beachten Sie, dass bei einem aufklappbaren Abschnitt ein Titel verpflichtend ist. Dieser muss vom Ersteller des Formulars angegeben werden.

Um einen Abschnitt mit einem bestimmten Spaltenlayout zu erstellen, öffnen Sie den Formular-Editor und fügen über die linke Seitenleiste einen neuen Abschnitt hinzu. Nach dem Hinzufügen des Abschnitts erhalten Sie eine Benachrichtigung, die Sie darüber informiert, wie Sie das Layout des Abschnitts ändern können. Wählen Sie den Abschnitt aus, um weitere Anpassungen vorzunehmen, z.B. weitere Formularfelder hinzuzufügen.

Wenn Sie einen Abschnitt als Wiederholungen festlegen, können Sie eine Mindest- und eine Maximalanzahl angeben. Damit bestimmen Sie, wie häufig dieser Abschnitt beim Ausfüllen des Formulars angezeigt werden kann. Sie können feste Werte eingeben oder Werte verwenden, die sich automatisch ändern, zum Beispiel durch Eingaben im Formular oder durch frühere Schritte im Prozess. Diese Werte werden während der Ausführung berechnet und passen sich automatisch an. So wird immer die passende Anzahl an Abschnitten angezeigt. In der Prozessausführungsansicht sehen Sie die Schaltfläche + [Abschnitt] unter dem Abschnitt, solange die maximale Anzahl noch nicht erreicht ist. Sie können außerdem festlegen, ob der Titel des Abschnitts in den Wiederholungen angezeigt wird.

Der Screenshot zeigt, wie ein Abschnitt im Formular-Editor mit "Wiederholungen" markiert werden kann.

Um Felder innerhalb eines wiederholbaren Abschnitts miteinander zu verknüpfen, müssen Sie die Variable _index verwenden. Sie steht für die aktuelle Position des jeweiligen Eintrags in der Wiederholung, wobei der erste Eintrag immer mit der Zahl 0 beginnt.

Bemerkung

Für jeden Abschnitt wird automatisch eine Abschnitts-ID erzeugt und oben rechts in den Details angezeigt. Die Abschnitts-ID steht unabhängig davon zur Verfügung, ob die Option Wiederholungen aktiviert ist oder nicht. Bei aktivierter Wiederholung ist die Abschnitts-ID ein Pflichtfeld, andernfalls ist sie optional. Somit verfügen auch nicht wiederholbare Abschnitte über eine eindeutige ID, die für technische Referenzen oder interne Verknüpfungen verwendet werden kann.

Hinweis

Bitte beachten Sie, dass sich die Abschnitts-ID auf den gesamten Abschnitt bezieht, während sich der _index auf den konkreten Eintrag innerhalb des Abschnitts bezieht. Nutzen Sie den _index, um sicherzustellen, dass sich auf die korrekte Zeile im Abschnitt beziehen.

Beispiel:

Sie haben im wiederholbaren Abschnitt diese zwei Formularfelder:

  • postcode (Eingabefeld)

  • street (Eingabefeld)

Wenn Sie möchten, dass das Feld street nur dann im Formular erscheint, wenn im Feld postcode bereits ein Wert steht und dieser genau fünf Zeichen lang ist, muss die Bedingung immer auf den gerade bearbeiteten Eintrag angewendet werden. Das ist besonders wichtig, wenn mehrere Adressen in einem wiederholbaren Abschnitt eingegeben werden. Dafür wird die Variable _index verwendet. Sie sorgt dafür, dass immer die Felder derselben Adresszeile geprüft werden. Es wird also geprüft, ob im aktuellen Eintrag im Feld postcode ein Wert steht und ob dieser fünf Zeichen lang ist. Nur dann wird das Feld street für genau diese Adresse angezeigt. Ohne die Variable _index wäre bei mehreren Adressen nicht eindeutig, auf welchen Eintrag sich die Bedingung bezieht.

Bei der Bearbeitung des Formulars wird jedes Element im Array einzeln geprüft. Die Variable _index sorgt dafür, dass dabei immer die richtigen Werte für das jeweilige Element verwendet werden:

Um auf ein bestimmtes street Feld innerhalb eines repetitiven Abschnitts zuzugreifen, ersetzt man den Platzhalter _index durch die gewünschte Positionsnummer (beginnend bei 0).

Beispiel:

Der Ausdruck postcodes[0].street gibt den Straßennamen des ersten Eintrags zurück.

Der Screenshot zeigt den „Formular-Editor“ mit dem Formularfeld street, das als Ausgeblendet konfiguriert ist.

!(postcodes[_index].postcode && postcodes[_index].postcode.length === 5)

Die Bedingung prüft, ob im Feld postcode ein Wert steht und ob dieser genau fünf Zeichen lang ist. Wenn das nicht so ist, bleibt das Feld street verborgen. Sobald ein gültiger postcode mit fünf Zeichen eingegeben wurde, wird das Feld street angezeigt. Durch die Variable _index müssen Sie nicht für jede Adresszeile eine eigene Regel erstellen. Änderungen können Sie an einer Stelle vornehmen.

Bemerkung

Bitte beachten Sie, dass das Symbol für die Datumsauswahl nicht sichtbar ist, wenn Sie einen weiteren Abschnitt im Webformular hinzufügen, das einen sich wiederholenden Abschnitt mit einer Datumsauswahl enthält.

Nachdem Sie Abschnitte erstellt und Formularfelder hinzugefügt haben, können Sie auf die entsprechenden Formularfelder klicken, um in der rechten Seitenleiste eine Übersicht mit ihren Details anzuzeigen.

Hier ist ein Formularfeld innerhalb des Abschnitts abgebildet.

Sie können auch mehrere Reihen zu einem Abschnitt hinzufügen, um größere Datenmengen effizient und strukturiert einzugeben und zu organisieren. Ziehen Sie dazu ein beliebiges Formularfeld (außer dem Abschnittsfeld) unter oder über eine Reihe, um es in den Abschnitt einzufügen. Eine blaue Linie zeigt Ihnen die genaue Position an.

Der Screenshot zeigt mehrere Reihen in einem Abschnittsfeld im Formular-Editor.

Wenn Sie Felder innerhalb eines Abschnitts verschieben oder löschen, bleibt die ursprüngliche Spaltenanordnung unverändert. Das bedeutet, dass das Spaltenlayout erhalten bleibt, auch wenn Änderungen an den Feldern vorgenommen werden. Wenn jedoch alle Felder aus einer Reihe gelöscht werden, wird auch die gesamte Reihe entfernt.

Es ist möglich, dem Formular mehrere Abschnitte hinzuzufügen. Jeder Abschnitt hat sein eigenes, unabhängiges Layout für die Spalten der Formularfelder.

In der Benutzerrolle ProcessApp User können Sie das Dateifeld innerhalb von wiederholbaren Abschnitten eines Formulars verwenden. So können Sie pro Wiederholung ein oder mehrere Eingabedokumente hochladen und diese Dateien später in nachfolgenden Aufgaben zuverlässig weiterverwenden. Mehr Informationen dazu finden Sie hier.

Bemerkung

Bitte beachten Sie, dass bei einem fehlerhaften Bereich der Titel des betroffenen Abschnitts hervorgehoben und in roter Farbe dargestellt wird.

Bemerkung

Bitte beachten Sie, dass jeder erstellte Abschnitt, dem mindestens eine ID oder ein Label zugewiesen wurde, automatisch in die Liste der Prozessvariablen aufgenommen wird.

Wie kann ich mir alle im Formular-Editor verwendeten Prozessvariablen anzeigen lassen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie alle Prozessvariablen des aktuellen Diagramms sehen, die in Formularen verwendet werden. Dazu müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich gerade in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile zu GBTEC Process Design wechseln. Gehen Sie in der linken Menüleiste zum Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auszuchecken. Öffnen Sie ein Diagramm, checken Sie es aus und klicken Sie auf eine freie Stelle im Arbeitsbereich. In der rechten Seitenleiste finden Sie die Registerkarte Details. Wählen Sie hier die Attributgruppe Automatisierung aus und markieren Sie den Prozess als ausführbaren Prozess. Wechseln Sie in der rechten Seitenleiste zur Registerkarte Optionen und wählen Sie den Eintrag Process Execution Editor aus. Klicken Sie auf die Option Editor öffnen. Danach wird die ProcessApp Konfiguration geöffnet. Dort sehen Sie alle verfügbaren Prozessvariablen in einer Liste.

Der Screenshot zeigt die ProcessApp Konfiguration mit dem ausgewählten Reiter "Prozessvariablen" und allen verfügbaren Prozessvariablen.

Der Variablenname ist das Label eines Formularfelds, die ID ist die ID des Formularfelds und der Datentyp ist Feldtyp des Formularfelds. Wenn Sie weitere Prozessvariablen hinzuzufügen möchten, müssen Sie zusätzliche Formularfelder konfigurieren. Wie das funktioniert, erfahren Sie hier.

Außerdem können Sie nach bestimmten Prozessvariablen suchen. Dazu steht Ihnen unter dem Reiter Formular ein Suchfeld zur Verfügung. Sie können mit diesem Suchfeld Prozessvariablen nach Variablennamen oder ID suchen. Bei Bedarf können Sie die gefundenen Prozessvariablen für das Konfigurieren benutzerdefinierter Spalten einer ProcessApp auswählen. Bereits ausgewählte Prozessvariablen sehen Sie mit einem Klick auf die Schaltfläche Ausgewählte Variablen anzeigen.

Der Screenshot zeigt die Suchleiste und die Option, alle ausgewählten Variablen anzuzeigen.

Hinweis

Bitte beachten Sie, dass Prozessvariablen in der Liste nur einmal gespeichert werden. So bleibt die Liste übersichtlich und enthält keine doppelten Einträge. Wenn Sie eine Variable zum ersten Mal anlegen, erscheint sie in der Liste. Verwenden Sie diese Variable später erneut, wird sie nicht noch einmal hinzugefügt.

Wie kann mich Arty bei der Konfiguration eines Formulars unterstützen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie bei der Konfiguration eines Formulars durch unseren KI-Assistenten Arty unterstützt werden. Dazu müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Gehen Sie in der linken Menüleiste zum Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Öffnen Sie ein Diagramm und checken Sie es aus. Markieren Sie eine Aktivität und typisieren Sie diese in der Registerkarte Details als Aufgabentyp Benutzer. Öffnen Sie das Kontextmenü der Aktivität und wählen Sie den Eintrag Formular-Editor. Weitere Informationen zum Erstellen und Konfigurieren eines Formulars finden Sie hier.

Um von Arty unterstützt zu werden, müssen die KI-gestützten Funktionen von Arty für Sie aktiviert sein. Außerdem muss ein Formular vorhanden sein oder Sie müssen im Formular-Editor ein Formularfeld hinzugefügt haben. Wenn Sie diese Voraussetzungen erfüllen, sehen Sie unten rechts im Formular-Editor die Arty-Schaltfläche.

Der Screenshot zeigt eine Arty-Schaltfläche im Formular-Editor für das Erhalten von Hilfe während der Konfiguration eines Formulars.

Nachdem Sie auf die Schaltfläche geklickt haben, öffnet sich ein Chatfenster mit Arty. Dort können Sie Anpassungen am Formular eingeben und mit der Eingabetaste oder durch einen Klick auf die Sendetaste an Arty senden.

Wenn Sie Ihre Anfrage an Arty gesendet haben, überarbeitet Arty das Formular für Sie und informiert Sie im Chatfenster über die Änderung. Danach können Sie weitere Anfragen an Arty senden.

Der Screenshot zeigt ein Beispiel für die Verwendung von Arty im Formular-Editor zur Anpassung des Formulars.

Warnung

Bitte beachten Sie, dass Sie Arty alle relevanten Informationen (z.B. Position des Formularfeldes) geben müssen. Nur so kann Arty Ihre Anfrage richtig bearbeiten. Wenn Informationen fehlen, kann Arty Ihre Anfrage nicht bearbeiten.

Tipp

Sie können Formularfelder automatisch mit vorhandenen Prozessvariablen verbinden. Arty erkennt dabei vorhandene Prozessvariablen und kann sie in das aktuelle Formular einfügen. Sie wählen die Prozessvariablen direkt im Chat aus. Eine manuelle Zuordnung ist nicht nötig. Vorhandene Variablen werden wiederverwendet und neue Variablen können bei Bedarf automatisch erzeugt werden.

Wenn Sie Artys Hilfe nicht mehr benötigen, können Sie den Chat über die Schaltfläche X schließen. Wenn Sie den Chat anschließend erneut öffnen, werden die vorherigen Nachrichten nicht mehr angezeigt. Klicken Sie auf die Schaltfläche Speichern in der oberen rechten Ecke des Formulareditors, um Ihre Änderungen zu speichern.

Tipp

Als ProcessApp Creator können Sie Arty nutzen, um ein neues Formular zu erstellen. Über die Schaltfläche Formular erstellen erstellt Arty einen Entwurf. Dafür müssen die KI-gestützten Funktionen von Arty für Sie aktiviert sein. Weitere Informationen hierzu finden Sie hier.

Hinweis

Bitte beachten Sie, dass die KI-gestützten Funktionen von Arty nicht in der Standardlizenz enthalten sind. Kontaktieren Sie Ihren Ansprechpartner für weitere Informationen. Bitte beachten Sie auch die Hinweise zur Nutzung der KI-Funktion.

Wie kann ich Formeln im Formular-Editor testen?

Im Formular-Editor können Sie Formeln in allen Formularfeldern testen, in denen ein Standardwert definiert werden kann oder die Attribute Pflichtfeld, Schreibgeschützt oder Versteckt vorhanden sind. Wählen Sie dazu ein beliebiges Formularfeld im Formular aus. In den Details der rechten Seitenleiste finden Sie neben dem Eingabefeld Geben Sie einen Standardwert oder eine Formel ein eine Schaltfläche, die erweiterte Eingabemöglichkeiten und das Testen von Formeln ermöglicht.

Bei den Attributen Pflichtfeld, Schreibgeschützt und Versteckt der jeweiligen Formularfelder muss jeweilis die Option bedingt ausgewählt sein, damit Sie die Schaltfläche betätigen können.

Der Screenshot zeigt das Eingabefeld "Geben Sie einen Standardwert oder eine Formel ein" mit einer Schaltfläche zur Formeleingabe.

Nachdem Sie auf die Schaltfläche geklickt haben, öffnet sich ein Formel-Editor, in dem Sie eine Formel zur Berechnung des Standardwerts eingeben können. Um Ihre Formel vorab im Formular-Editor zu überprüfen, können Sie im Eingabefeld Eingabevariablen Variablen eingeben und die Schaltfläche Prüfen verwenden, um die Formel zu testen. Das Ergebnis wird im Feld Ausgabe als Key-Value-Paare im JSON-Format angezeigt.

Anschließend können Sie Ihre Formel über die Option Speichern speichern. Um Ihre Eingabe zu verwerfen, klicken Sie auf die Schaltfläche Schließen.

Der Screenshot zeigt den Formel-Editor im Formular-Editor.

Code zum Kopieren und Testen:

Formel zur Berechnung des Standardwertes:
CONCAT(first, " ",last)

Eingabevariablen:
{
    "first":"Max",
    "last":"Mustermann"
}

Hinweis

Weitere Informationen über die Formeln, die Sie verwenden können, finden Sie hier.

Wie kann ich im Formular-Editor eine Vorschau des Formulars anzeigen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie ein Formular für eine Aufgabe im Formular-Editor erstellen und jederzeit in der Vorschau überprüfen. Dazu müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile zu GBTEC Process Design wechseln. Wählen Sie in der linken Menüleiste den Menüeintrag Diagramme aus und öffnen Sie ein Diagramm aus dem gewünschten Repository. Nach dem Öffnen checken Sie das Diagramm aus, um es bearbeiten zu können. Markieren Sie im Diagramm eine Aktivität und legen Sie in der Registerkarte Details in der rechten Seitenleiste den Aufgabentyp Benutzer fest. Danach können Sie den Formular-Editor entweder über das Kontextmenü der markierten Aktivität oder über den Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste öffnen.

Nachdem Sie ein Formular erstellt oder geändert haben, können Sie über die Schaltfläche Vorschau eine Ansicht des aktuellen Formulars öffnen. Die Vorschau wird direkt im aktuellen Arbeitsbereich angezeigt und entspricht dem aktuellen Stand des Formularentwurfs. Dabei werden auch noch nicht gespeicherte Änderungen berücksichtigt. So können Sie Anpassungen sofort prüfen, ohne sie vorher speichern zu müssen.

Der Screenshot zeigt, wie im geöffneten "Formular-Editor" eine "Vorschau" des Formulars angezeigt werden kann.

In der Vorschau sehen Sie das Formular genau so, wie es später von Benutzern im laufenden Prozess ausgefüllt werden kann. Sie können direkt mit dem Formular arbeiten, zum Beispiel Eingabefelder ausfüllen, Auswahloptionen wählen oder Schaltflächen verwenden. So prüfen Sie, ob das Formular wie erwartet funktioniert. Pflichtfelder werden deutlich hervorgehoben, Validierungsregeln werden geprüft und abhängige Felder werden automatisch ein- oder ausgeblendet. Dadurch können Sie das Verhalten des Formulars realistisch nachvollziehen.

Der Screenshot zeigt die "Vorschau" eines Formulares im "Formular-Editor".

Die Formularvorschau stellt sicher, dass Sie das Formular jederzeit im aktuellen Bearbeitungsstand prüfen können. Das gilt auch für nicht gespeicherte Änderungen, Validierungen und die korrekte Darstellung. Damit ist die Vorschau eine verlässliche Grundlage für die weitere Konfiguration und Bereitstellung des Prozesses.

Hinweis

Bitte beachten Sie, dass in der Vorschau eine entsprechende Leermeldung angezeigt wird, wenn Sie dem Formular noch keine Prozessvariablen hinzugefügt haben.

Wie kann ich im Formular-Editor Testdaten für mein Formular verwenden?

Als Benutzer mit der Benutzerrolle ProcessApp Creator haben Sie die Möglichkeit, ein Formular für eine Aufgabe mit dem Formular-Editor zu erstellen und dieses jederzeit mit Beispielwerten zu testen. Wählen Sie dazu in GBTEC Process Design in der linken Menüleiste den Menüeintrag Diagramme aus und öffnen Sie ein Diagramm aus dem gewünschten Repository. Nach dem Öffnen checken Sie das Diagramm aus, um es bearbeiten zu können. Markieren Sie anschließend im Diagramm eine Aktivität und typisieren Sie diese in der Registerkarte Details in der rechten Seitenleiste als Aufgabentyp Benutzer. Danach können Sie den Formular-Editor entweder über das Kontextmenü der markierten Aktivität oder über den Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste öffnen.

Neben der Formularvorschau steht Ihnen im Formular-Editor der Reiter Testdaten zur Verfügung. In diesem Bereich können Sie Beispielwerte im JSON-Format für die im Formular verwendeten Felder hinterlegen, um das Verhalten des Formulars realitätsnah zu überprüfen, ohne den Prozess tatsächlich starten zu müssen.

Der Screenshot zeigt den Tab "Testdaten" eines Formulares im "Formular-Editor".

Beim Öffnen des Reiters Testdaten werden alle im Formular verwendeten Felder automatisch angezeigt. Für jedes Feld können Sie hier passende Beispielwerte eintragen, zum Beispiel einen Namen, einen Preis oder eine Menge. Zusätzlich werden auch Werte für Felder vorbereitet, die im Formular selbst nicht direkt sichtbar sind, aber im Hintergrund verwendet werden, etwa für Berechnungen oder Platzhalter.

Sobald Sie die Testdaten anpassen, werden diese automatisch in der Vorschau des Formulars übernommen. Das Formular wird in Echtzeit aktualisiert, sodass Sie sofort sehen können, wie sich Ihre Eingaben auswirken. Auf diese Weise können Sie prüfen, ob Berechnungen korrekt dargestellt werden, Inhalte richtig angezeigt werden oder sich das Formular wie erwartet an unterschiedliche Eingaben anpasst.

Die im Reiter Testdaten hinterlegten Werte bleiben erhalten und werden nicht automatisch zurückgesetzt. So können Sie Ihr Formular schrittweise weiterentwickeln und jederzeit erneut mit denselben oder angepassten Beispielwerten testen.

Wie kann ich die Position einzelner Elemente in meinem Formular verändern?

Im Formular-Editor können Sie die Felder einfach per Drag & Drop anpassen. Sie können Felder aus der Palette in einen Abschnitt ziehen und dort ablegen, Felder aus der Basisliste an beliebiger Stelle in Abschnitten platzieren und Felder aus einem Abschnitt zurück in die Basisliste verschieben. Außerdem können Sie Felder innerhalb eines Abschnitts neu anordnen. Beim Ziehen eines Feldes wird immer eine blaue Linie angezeigt, die die mögliche Position markiert, unabhängig davon, wie weit das nächste Feld entfernt ist.

Hinweis

Bitte beachten Sie, dass es nicht möglich ist, einen Abschnitt in einen anderen Abschnitt einzufügen.

Hier ist ein Formularfeld, dessen Position neu in der Liste bestimmt wird, dargestellt.

Wie kann ich eins meiner Formularfelder aus dem Formular entfernen?

Wenn Sie ein Feld aus Ihrem Formular entfernen möchten, klicken Sie einfach auf die Schaltfläche Element löschen rechts neben dem Feld. Dadurch wird das Element aus der Liste der Formularfelder entfernt.

Hier ist die Funktion, mit dessen Hilfe einzelne Formularfelder aus der Liste entfernt werden können, abgebildet.

Wie kann ich den Quellcode eines Formulars einsehen und bearbeiten?

Sie können als ProcessApp Creator den Quellcode des Formulars einsehen und bei Bedarf anpassen. Dazu können Sie manuell etwas in den Quelltext schreiben, kopieren, ausschneiden oder einfügen. Öffnen Sie dazu den Formular-Editor und wählen Sie den Reiter Quelltext.

Der Screenshot zeigt den Quellcode des Formulars, welchen Sie einsehen und bei Bedarf anpassen können.

Innerhalb des Quelltextes können Sie verschiedene Tastenkombinationen verwenden, um eine bessere Übersicht zu erhalten:

1. Suche und Navigation

  • Strg + F: Suchen in der aktuellen Datei.

  • Strg + H: Suchen und Ersetzen.

  • F3: Die nächste Übereinstimmung in der Suche suchen.

  • Strg + F3: Das nächste Vorkommen des aktuellen Wortes oder der aktuellen Auswahl auswählen.

  • Strg + G: Springt zu einer bestimmten Zeile in der Datei.

  • Strg + Umschalt + O: Zu einem Symbol in einer Datei wechseln.

2. Textauswahl

  • Strg + A: Den gesamten Text in der Datei auswählen.

  • Strg + L: Die aktuelle Zeile auswählen.

  • Strg + D: Wählt das nächste Vorkommen des aktuellen Wortes oder der aktuellen Auswahl aus.

  • Strg + Umschalt + L: Alle Vorkommen des aktuellen Wortes oder der aktuellen Auswahl markieren.

  • Umschalt + ← / →: Markiert den Text links oder rechts, Zeichen für Zeichen.

  • Strg + Umschalt + ← / →: Text wortweise nach links oder rechts markieren.

  • Umschalt + ↑ / ↓: Text zeilenweise, nach oben oder unten markieren.

  • Strg + Umschalt + ↑ / ↓: Verschiebt die aktuelle Zeile nach oben oder unten, während die Auswahl beibehalten wird.

  • Strg + Umschalt + Start: Auswahl von der aktuellen Position bis zum Anfang des Dokuments.

  • Strg + Umschalt + Ende: Markieren von der aktuellen Position bis zum Ende des Dokuments.

  • Umschalt + Start: Wählt von der aktuellen Position bis zum Anfang der Zeile aus.

  • Umschalt + Ende: Markieren von der aktuellen Position bis zum Ende der Zeile.

3. Textbearbeitung

  • Strg + Z: Rückgängig machen der letzten Aktion.

  • Strg + Umschalt + Z: Wiederholen der zuletzt rückgängig gemachten Aktion.

  • Strg + Umschalt + K: Die aktuelle Zeile löschen.

  • Strg + U: Rückgängig machen der letzten Cursor-Aktion.

  • Alt + Klick: Einfügen eines Cursors an mehreren Stellen (Multicursor).

  • Alt + Umschalt + ↓ / ↑: Verschiebt die ausgewählte Zeile nach unten oder oben.

  • Strg + Alt + ↓ / ↑: Kopieren der ausgewählten Zeile nach unten oder oben.

  • Alt + ↓ / ↑: Verschiebt die ausgewählte Zeile nach unten oder oben.

4. Code-Formatierung

  • Alt + Shift + F: Formatieren des Codes.

5. Code-Einfaltung

  • Strg + Umschalttaste + [: Den aktuellen JSON-Block einklappen.

  • Strg + Umschalttaste + ]: Erweitert den aktuellen JSON-Block.

6. Einfügen von Zeilen

  • Strg + Eingabe: Einfügen einer neuen Zeile unterhalb der aktuellen Zeile.

  • Strg + Umschalt + Eingabetaste: Einfügen einer neuen Zeile oberhalb der aktuellen Zeile.

Alle Änderungen, die Sie im Quelltext vornehmen, werden sofort aktualisiert und im Formular angezeigt.

Hinweis

Bitte beachten Sie, dass bei ungültigem Quellcode weder gespeichert noch die Ansicht gewechselt werden kann. In diesem Fall werden Sie innerhalb des Quelltextes auf den ungültigen Quellcode hingewiesen.

Wie kann ich Validierungsregeln im Formular-Editor festlegen?

Sie können Ihre Formulare so einstellen, dass Benutzer bei falschen Eingaben sofort Rückmeldung erhalten. Dafür können Sie Validierungen und Fehlermeldungen festlegen. So vermeiden Sie Fehler in den Daten.

Dazu müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Wählen Sie in der linken Menüleiste den Menüeintrag Diagramme aus und öffnen Sie ein Diagramm aus dem gewünschten Repository. Nach dem Öffnen checken Sie das Diagramm aus, um es bearbeiten zu können. Markieren Sie anschließend im Diagramm eine Aktivität und legen Sie in der Registerkarte Details in der rechten Seitenleiste den Aufgabentyp Benutzer fest. Danach können Sie entweder per Rechtsklick auf die markierte Aktivität oder über den Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste den Formular-Editor öffnen.

Hinweis

Bitte beachten Sie, dass Sie die Validierungsregeln nur dann festlegen können, wenn Ihr Prozess als ausführbarer Prozess definiert ist.

Sie können nun eine Benutzerdefinierte Validierung hinzufügen. Klicken Sie dazu zunächst auf das gewünschte Formularfeld. Anschließend wechseln Sie im Formular-Editor in der rechten Seitenleiste zum Abschnitt Benutzerdefinierte Validierungen und klicken dort auf Validierung hinzufügen.

Warnung

Bitte beachten Sie, dass HTML-Felder, Dateifelder und Abschnittsfelder nicht mit Validierungsregeln verwendet werden können.

Der Screenshot zeigt, den Formular-Editor und die Funktion "Validierung hinzufügen" zum Hinzufügen einer "Benutzerdefinierten Validierung".

Definieren Sie anschließend eine Validierung, die sicherstellt, dass die Eingaben des Benutzers den erforderlichen Kriterien entsprechen. Legen Sie eine Fehlermeldung fest. Diese Benachrichtigung wird angezeigt, wenn die Eingabe die Validierungsregel verletzt und informiert den Benutzer darüber, welche Anpassung erforderlich ist.

Der Screenshot zeigt, die Benutzerdefinierte Validierung "startDate <= date('2025-12-31')" und die zugehörige "Fehlermeldung".

Hinweis

Bitte beachten Sie, dass sich Ihre benutzerdefinierten Validierungen auf die zugrunde liegende ID des jeweiligen Formularfeldes beziehen müssen.

Bemerkung

Bitte beachten Sie, dass die Validierungsformel ein logischer Ausdruck ist. Verwenden Sie Vergleichsoperatoren wie <, <=, >, >=, == oder !=, um den vom Benutzer eingegebenen Wert mit Ihren Kriterien zu vergleichen.

Um Ihre Einstellungen zu speichern und zu übernehmen, klicken Sie oben rechts im Formular-Editor auf die Schaltfläche Speichern.

Wenn Sie nun eine Aufgabe mit der benutzerdefinierten Validierung ausfüllen und auf die Schaltfläche Erledigt klicken, wird das definierte Formular automatisch auf Validierungsfehler, unausgefüllte Pflichtfelder sowie Muster- oder Formatvorgaben geprüft. Enthält das Formular ungültige oder unvollständige Eingaben oder verstößt eine Eingabe gegen die Validierungsregeln, erscheint oben in der Prozessausführungsansicht ein Fehlerbanner, mit allen Fehlern. Die Fehler basieren sowohl auf den in der Konfiguration definierten Validierungen als auch auf den Standardvalidierungsregeln. Im Fehlerbanner sehen Sie eine übersichtliche Liste aller Validierungsfehler. Jeder Fehler ist dabei verständlich formuliert und beschreibt das Problem klar.

Der Screenshot zeigt eine interaktive Fehlermeldung in der Prozessausführungsansicht.

Die im Fehlerbanner aufgeführten Fehler sind interaktiv. Wenn Sie auf einen Fehler klicken, gelangen Sie direkt zu dem entsprechenden Feld in der Prozessausführung, in dem der Fehler aufgetreten ist. So können Aufgaben nur dann abgeschlossen werden, wenn alle erforderlichen Eingaben korrekt und vollständig sind.

Hinweis

Sie haben die Möglichkeit, jedem Formularfeld beliebig viele Validierungsregeln zuzuordnen.

Wie kann ich eine Signieraufgabe erstellen?

Sie können Ihre Formulare so gestalten, dass Ihre Benutzer sich authentifizieren müssen, um sie erfolgreich abzuschließen. Um eine solche Aufgabe zu erstellen, muss Ihre Aufgabe vom Typ Benutzer sein. Öffnen Sie den Formular-Editor der Aktivität und wählen Sie den Reiter Einstellungen.

Dieser Screenshot zeigt die Registerkarte Einstellungen des Formular-Editors.

Wählen Sie die Option Markieren Sie diese Aufgabe als Signieraufgabe. Dies führt dazu, dass sich der Aufgabenverantwortliche beim Abschließen der Aufgabe authentifizieren muss. Wie diese Authentifizierung abläuft, finden Sie hier erklärt.

Bemerkung

Bitte beachten Sie, dass diese Funktion nicht standardmäßig aktiviert ist und in Ihrem System erst eingerichtet werden muss. Wenden Sie sich dazu bitte an Ihren Ansprechpartner bei GBTEC.

Wie kann ich eine Aufgabe für einen externen Benutzer erstellen?

Als Benutzer mit der Benutzerrolle ProcessApp User haben Sie die Möglichkeit, innerhalb eines Diagramms eine Aufgabe für einen externen Benutzer zu erstellen und durchzuführen. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Navigieren Sie über die linke Menüleiste zum Menüpunkt Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken.

Sobald Sie sich in der Modellierungsansicht befinden, können Sie eine Rolle definieren, indem Sie einen Pool hinzufügen. Erstellen Sie anschließend zwei Lanes, um interne und externe Prozesse klar zu trennen. Platzieren Sie das Startereignis, das Endereignis sowie die internen Aktivitäten in der internen Lane. Mindestens eine Aktivität muss sich jedoch in der externen Lane befinden.

Um eine Lane als extern zu kennzeichnen und Aufgaben für externe Benutzer zu erstellen, klicken Sie auf den Namen der entsprechenden Lane. Wechseln Sie anschließend in der rechten Seitenleiste zur Registerkarte Details und aktivieren Sie dort die Schaltfläche Extern, indem Sie das Häkchen setzen. Geben Sie zusätzlich im Attributfeld Identifizierer eine beliebige ID ein.

Der Screenshot zeigt ein BPMN-Diagramm mit internen und externen Swimlanes.

Nachdem Sie die gewünschte Lane als extern gekennzeichnet haben, weisen Sie den Aktivitäten in beiden Lanes den Aufgabentyp Benutzer zu. Klicken Sie dazu jeweils auf eine Aktivität, öffnen Sie per Rechtsklick das Kontextmenü und wählen Sie die Option Formular-Editor, um das zugehörige Formular zu konfigurieren.

Wählen Sie im Formular-Editor in der linken Seitenleiste das Formularfeld Textfeld aus und fügen Sie es dem Formular hinzu. Tragen Sie anschließend in der rechten Seitenleiste im Attribut ID denselben Identifizierer ein, den Sie zuvor für die externe Lane festgelegt haben. In unserem Beispiel lautet dieser externalMail. Speichern und schließen Sie den Formular-Editor. Wiederholen Sie diesen Schritt für beide Aktivitäten.

Der Screenshot zeigt einen Forms-Editor mit der ID „externalMail“.

Um eine Aufgabe an externe Benutzer zu versenden, geben Sie die E-Mail-Adresse des jeweiligen Benutzers ein. Checken Sie das Diagramm über die Schaltfläche Einchecken ein. Starten Sie anschließend einen neuen Vorgang über die Schaltfläche *ProcessApp testen*. Wenn Sie den Prozess ausführen, gelangen Sie zur Prozessausführungsansicht. In diesem Beispiel können Sie in der ersten Aufgabe eine externe E-Mail-Adresse eingeben.

Der Screenshot zeigt wo die externe E-Mail in der ProcessApp eingetragen wird.

Nachdem Sie die E-Mail-Adresse eingegeben und die Aufgabe als erledigt markiert haben, erhält der externe Benutzer eine E-Mail mit der externen Aufgabe. Eine Anleitung, wie ein externer Benutzer eine externe Aufgabe bearbeiten kann, finden Sie hier.

Hinweis

Sie können externe Aufgaben auch testen. Bitte beachten Sie, dass dies nur im Bereich Veröffentlichung möglich ist.

Hinweis

Bitte beachten Sie, dass sich die Rollen im gleichen Pool befinden müssen. Andernfalls können die Aktivitäten nicht miteinander interagieren.

Hinweis

Bitte beachten Sie, dass Sie mehrere E-Mail-Adressen durch ein Semikolon trennen müssen.

Skriptaufgabe

Wie kann ich eine Skriptaufgabe erstellen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie in Ihrem Prozess Aufgaben automatisiert ausführen, indem Sie Skripte einbinden. Dabei werden die Skriptsprachen JavaScript und Groovy unterstützt. Die Skriptsprache JavaScript basiert ab der Version 7.12.0 auf der GraalVM Script Engine. Die JavaScript ECMA Version 5.1 ist abwärtskompatibel und unterstützt somit auch die neuen Bestandteile der Version 13.0. Weitere Informationen zu den verwendeten JavaScript-Standards (ECMA) und zur Groovy Engine finden Sie in den folgenden Links.

Hinweis

Die Nashorn JavaScript Engine wird ab der Version 7.12.0 nicht mehr unterstützt.

Hinweis

Die Version der Groovy Engine, die für die Ausführung und Erstellung von Skriptaufgaben verwendet wird, wurde auf die Version 4.0.12 aktualisiert.

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Gehen Sie über die linke Menüleiste zum Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auszuchecken. Öffnen Sie ein Diagramm. Nach dem Öffnen checken Sie das Digramm aus. Damit Sie den Skript-Editor öffnen können, muss das entsprechende Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss den Typ Skript haben.

Anschließend finden Sie im Kontextmenü der Aktivität, das Sie mit einem Rechtsklick auf das Symbol öffnen, den Eintrag Script-Editor.

Dieser Screenshot zeigt das Kontextmenü einer Aktivität mit der Option "Öffne Script-Editor".

Alternativ können Sie den Editor auch öffnen, indem Sie die Aktivität auswählen und der Registerkarte Optionen den Process Execution Editor öffnen. Dort finden Sie die Schaltfläche Editor öffnen, mit der Sie den Skript-Editor öffnen.

Im Feld Skriptsprache können Sie über ein Drop-Down-Menü die gewünschte Sprache auswählen. Schreiben Sie anschließend das Skript, das zur Laufzeit eines Vorgangs ausgeführt werden soll. Wenn Sie eine Skriptsprache über das Drop-Down-Menü ausgewählt haben, können Sie mit Hilfe von Prozessvariablen das Skript dynamisch an den jeweiligen Vorgang anpassen. Das folgende Beispiel zeigt ein Groovy-Skript, in dem die Prozessvariable employee_name als Attribut eines neuen Objekts user verwendet wird. Dieses Objekt wird dann in Zeile 13 als eine neue Prozessvariable zurückgegeben.

Hier ist der Script-Editor mit einem groovy Skript abgebildet.

Auch in JavaScript kann mit Prozessvariablen gearbeitet werden. Das folgende Beispiel zeigt das gleiche Verhalten wie das vorherige Beispiel. Die letzte Anweisung des Skripts wird automatisch als Prozessvariable zurückgegeben (hier das neue Objekt user in Zeile 9).

Hier ist der ein Skript im Script-Editor abgebildet, wobei die JavaScript Sprache gewählt wurde.

Warnung

Sollte das Ergebnis mit var result = ... deklariert werden, müssen Sie result in der letzten Zeile erneut explizit angeben.

Sie haben zusätzlich die Möglichkeit, die eingegebenen Daten zu speichern, um das Ergebnis vor dem Abschluss der Skript-Aufgabe zu überprüfen. Klicken Sie dazu auf die Schaltfläche Script testen.

Der Screenshot zeigt die Schaltfläche "Script testen", um vor dem Beenden der Skript-Aufgabe diese zu überprüfen.

Wenn das Skript erfolgreich ausgeführt wurde, erhalten Sie das Ergebnis als Key-Value-Paare im JSON-Format.

Bemerkung

Bitte beachten Sie, dass Ausgaben, die größer als 64 KB sind, nicht angezeigt werden.

Wählen Sie anschließend die Schaltfläche Speichern oben rechts aus, um Ihr Skript zu speichern und den Editor zu schließen. Wenn Sie auf das direkt daneben angeordnete X-Symbol klicken, wird der Editor geschlossen, ohne dass Ihre Änderungen gespeichert werden.

Sie können auch IDs verwenden, die auf einem Benutzer oder einer Benutzergruppe basieren, direkt im Skript-Editor nutzen. Wenn Sie in einer vorherigen Aktivität vom Typ Benutzer eine ID für einen Benutzer oder eine Benutzergruppe festgelegt haben, können Sie diese ID in einer nachfolgenden Aktivität vom Typ Skript weiterverwenden. Wenn Sie die ID ohne ein bestimmtes Attribut verwenden, hängt der zurückgegebene Wert vom Typ der Identität ab. Bei einer Identität vom Typ USER wird automatisch die E-Mail-Adresse des Benutzers verwendet. Bei einer Identität vom Typ USER_GROUP wird stattdessen der Name der Benutzergruppe zurückgegeben.

Darüber hinaus können Sie gezielt auf einzelne Attribute der Identitäten zugreifen:

  • .id – gibt die ID der Identität zurück

  • .language – gibt die aktuell gewählte Inhaltssprache des Benutzers bzw. der Benutzer innerhalb der Gruppe zurück

  • .name – gibt den Namen des Benutzers oder der Benutzergruppe zurück

  • .email – gibt die E-Mail-Adresse des Benutzers zurück (für Gruppen nicht verfügbar)

  • .type – gibt den Typ der Identität zurück (USER oder USER_GROUP)

Diese Attribute stehen Ihnen im Skript-Editor zur Verfügung und können dort weiterverarbeitet werden.

Schließen Sie anschließend den Editor mit der Schaltfläche Speichern oben rechts oder verwerfen Sie die Eingabe über das direkt daneben angeordnete X-Symbol.

Hinweis

Bitte verwenden Sie die korrekte JavaScript-Syntax, um einer Prozessvariable eine Liste hinzuzufügen. Ein Beispiel dazu finden Sie im folgenden Abschnitt.

*JavaScript*
var userList = ["John Doe", "Max Mustermann"];
vars = {
    scriptListVar:userList
}

Wenn Sie das Skript in JavaScript schreiben und die oben gezeigte Syntax verwenden, werden die Einträge einzeln als Prozessvariablen (hier vom Typ String) gespeichert. Um die gesamte Liste als eine Prozessvariable vom Datentyp List zu speichern, müssen Sie im Skript eine der beiden folgenden Alternativen verwenden.

*JavaScript*
var List = Java.type("java.util.List");
var userList = List.of("John Doe", "Max Mustermann");

vars = {
    scriptListVar:userList
}
*JavaScript*
var Arrays = Java.type("java.util.Arrays");
var userList = ["John Doe", "Max Mustermann"];

vars = {
    scriptListVar:Arrays.asList(userList)
}

Sie können Datumswerte auch als Ausgabevariablen im Skript verwenden. Datumswerte in Prozessvariablen werden als String gespeichert. Für JavaScript gibt es jedoch eine Ausnahme: Wenn ein Objekt Date als Teil einer Antwort zurückgegeben wird, anstatt den Objektwert zu formatieren, kann die Variable den Wert null enthalten. Die folgenden Beispiele zeigen das unterschiedliche Verhalten der beiden Skriptsprachen.

Hinweis

Bitte beachten Sie, dass Skripte keine Datumswerte vom Datentyp Date zurückgeben können.

Warnung

Bitte beachten Sie, dass Aufgaben, die während eines Systemneustarts aktiv waren, automatisch in den Fehlerstatus gesetzt werden. Dies betrifft sowohl Skript- als auch Serviceaufgaben, die zum Zeitpunkt des Neustarts ausgeführt wurden. Da diese Aufgaben nicht abgeschlossen werden konnten, gelten sie nach dem Neustart als fehlerhaft. Sie werden den jeweiligen Nutzern zugewiesen und lösen eine Benachrichtigung per E-Mail aus. Aufgaben, die aufgrund dieser Änderung in den Fehlerstatus gesetzt wurden, können wie gewohnt erneut gestartet werden.

Bei der Nutzung von JavaScript:

let localdate = new Date()
output = {
    javaScriptDate: localdate,
    javaScriptDate_String: localdate.toISOString()
};

Wenn Sie das Objekt javaScriptDate als Variablenwert zurückgeben möchten, hat die Ausgabe des Skripts den Wert null. Um das Datum als String zurückzugeben, verwenden Sie Methoden wie toISOString() oder toJSON(), wie im Beispiel javaScriptDate_String.

Bei der Nutzung von Groovy:

Map output = new HashMap();
Date testDate = new Date();
output.put("groovyDate", testDate);
return output;

Die Rückgabe einer Map mit einem Objekt Date, wie im vorherigen Beispiel gezeigt, gibt den Datumswert im Gegensatz zu JavaScript immer als String zurück.

Wie kann ich Code-Ausschnitte mithilfe von KI im Skript-Editor erstellen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie Arty verwenden, um im Skript-Editor Code zu generieren. Wenn Sie sich derzeit in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile zu GBTEC Process Design wechseln.

Klicken Sie auf eine freie Stelle im Arbeitsbereich. In der rechten Seitenleiste finden Sie die Registerkarte Details. Wählen Sie hier die Attributgruppe Automatisierung aus und markieren Sie den Prozess als ausführbaren Prozess. Klicken Sie anschließend auf eine Aktivität und gehen Sie zur Registerkarte Details. Der Aufgabentyp der Aktivität muss den Typ Skript haben.

Anschließend finden Sie im Kontextmenü der Aktivität die Option Skript-Editor, die Sie über einen Rechtsklick auf die entsprechende Aktivität erreichen.

Dieser Screenshot zeigt das Kontextmenü einer Aktivität mit der Option "Öffne Script-Editor".

Alternativ können Sie den Skript-Editor öffnen, indem Sie die Aktivität auswählen und in der Registerkarte Optionen in der rechten Seitenleiste die Option Process Execution Editor auswählen. Dort finden Sie die Schaltfläche Editor öffnen, mit der Sie den Skript-Editor öffnen.

Um mithilfe von Arty Code-Ausschnitte in JavaScript oder Groovy zu generieren, klicken Sie im Skript-Editor unten rechts auf das Arty-Symbol.

Der Screenshot zeigt den "Skript-Editor" und "Arty" unten rechts in der Ecke.

Hinweis

Bitte beachten Sie, dass für die Nutzung dieser Funktion eine separate Lizenz erforderlich ist. Bitte beachten Sie auch die Hinweise zur Nutzung der KI-Funktion.

Beschreiben Sie im nun geöffneten Chat, was Sie erstellen oder anpassen möchten. Der generierte Code wird anschließend automatisch in das Hauptfeld des Skript-Editors eingefügt.

Der Screenshot zeigt die Möglichkeit, über "Arty" Codes im "Skript-Editor" zu generieren.

Weitere Beispiele für Eingabeanforderungen an Arty können wie folgt aussehen:

  • Generiere eine Groovy-Funktion, die die Prozessvariable Bestellnummer um eins erhöht.

  • Passe den Code so an, dass zusätzlich eine Konsolenausgabe erzeugt wird.

  • Formuliere eine passende KI-Eingabeaufforderung für diese KI-Aktivität.

Hinweis

Bitte beachten Sie, dass Ihre Anweisungen an Arty möglichst präzise formuliert sein sollten. Andernfalls weist Arty Sie darauf hin, dass die Anfrage nicht verstanden wurde, und fordert Sie auf, diese zu präzisieren.

Wie kann ich eine Skriptaufgabe mit Hilfe von KI erstellen?

Als ProcessApp Creator haben Sie die Möglichkeit, mit Hilfe unseres KI-Assistenten Arty eine Skriptaufgabe zu erstellen. Öffnen Sie dazu den Skript-Editor im entsprechenden Diagramm in GBTEC Process Design. Dazu muss das entsprechende Diagramm als ausführbarer Prozess markiert und der Aufgabentyp der Aktivität vom Typ Skript sein.

Anschließend finden Sie im Kontextmenü der Aktivität, das Sie durch einen Klick mit der rechten Maustaste auf das Symbol öffnen, den Eintrag Script-Editor.

Dieser Screenshot zeigt das Kontextmenü einer Aktivität mit der Option "Öffne Script-Editor".

Alternativ können Sie den Editor auch öffnen, indem Sie die Aktivität auswählen und in den Optionen die Rubrik Process Execution Editor wählen. Dort finden Sie die Schaltfläche Editor öffnen, mit der Sie den Skript-Editor öffnen können.

Im Feld Skriptsprache können Sie über das Drop-Down-Menü die Option KI-Eingabeaufforderung auswählen. Anschließend geben Sie im oberen Eingabefeld eine Eingabeaufforderung für Arty ein und definieren im Feld Eingabevariablen für den Test die entsprechenden Variablen. Um das Ergebnis vor Abschluss der Skript-Aufgabe zu überprüfen, klicken Sie auf Test starten.

Der Screenshot zeigt den Skript-Editor mit einem Beispiel für die KI-Eingabeaufforderung.

Anschließend werden die Platzhalter im obersten Eingabefeld durch die angegebenen Eingabevariablen ersetzt und als Ausgabe die definierte Anforderung ausgeführt. Wenn das Skript erfolgreich ausgeführt wurde, erhalten Sie das Ergebnis als Key-Value-Paare im JSON-Format.

Bei der Eingabe einer Variable als Platzhalter steht Ihnen die Auswahl zwischen JUEL-Ausdruck und String-Ersetzung zur Verfügung. Die gewünschte Variante legen Sie direkt im Drop-Down-Menü im oberen Bereich in der Option Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste fest.

Der Screenshot zeigt Ihnen die Auswahl zwischen "JUEL-Ausdruck" und "String-Ersetzung" im Drop-Down-Menü im oberen Bereich des "Process Execution Editors".

Bitte beachten Sie, dass beide Varianten nicht gleichzeitig unterstützt werden. Diagramme, die vor der 8.0.0 Version erstellt wurden, verwenden automatisch die bisherige String-Ersetzungslogik. Für neu erstellte Diagramme hingegen ist nun standardmäßig die JUEL-Variante vorausgewählt. Unabhängig davon können Sie die gewählte Option jederzeit anpassen, jedoch wird die Umstellung von neuen Diagrammen auf die String-Ersetzung nicht empfohlen.

Tipp

Weitere Informationen über JUEL-Ausdrücke erfahren Sie hier.

Hinweis

Bitte beachten Sie, dass die KI-gestützte Funktion von Arty nicht in der Standardlizenz enthalten ist. Kontaktieren Sie Ihren Ansprechpartner für weitere Informationen. Bitte beachten Sie auch die Hinweise zur Nutzung der KI-Funktion.

Wie kann ich Daten aus einer Datentabelle mit Hilfe von SDK-Funktionen in einer Skriptaufgabe abrufen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie Daten aus einer hochgeladenen Datentabelle in einem Prozess verwenden. Sie können die Daten mit einer SDK-Funktion in einer Skript-Aufgabe abrufen und anschließend weiterverarbeiten.

Dabei werden die Skriptsprachen JavaScript und Groovy unterstützt. Ab Version 7.12.0 basiert JavaScript auf der GraalVM Script Engine. JavaScript ECMA Version 5.1 wird weiterhin unterstützt und kann auch mit den Funktionen von ECMA Version 13.0 verwendet werden. Weitere Informationen zu den verwendeten JavaScript-Standards und zur Groovy Engine finden Sie unter den folgenden Links:

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Dropdown-Menü in der Kopfzeile zu GBTEC Process Design wechseln. Öffnen Sie in der linken Menüleiste den Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Damit Sie den Script-Editor öffnen können, muss das entsprechende Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss Skript sein. Klicken Sie anschließend mit der rechten Maustaste auf die Aktivität und wählen Sie im Kontextmenü den Eintrag Script-Editor aus.

Dieser Screenshot zeigt das Kontextmenü einer Aktivität mit der Option "Öffne Script-Editor".

Erstellen Sie eine Skriptaufgabe, um auf eine Datentabelle zuzugreifen. Im Feld Skriptsprache können Sie die gewünschte Sprache über ein Drop-Down-Menü auswählen.

Hier ist der Script-Editor mit einem groovy Skript abgebildet.

Um Daten aus einer Datentabelle abzurufen, verwenden Sie den Befehl dataTables.get("<table_name>").query().list(). Bevor Sie die Daten abrufen können, muss die Datentabelle in GBTEC Work Orchestrator vorhanden sein.

Um eine Datentabelle zu erstellen, wechseln Sie über den Fokus Work Orchestrator im Fokus-Dropdown-Menü in der Kopfzeile zu GBTEC Work Orchestrator. Öffnen Sie in der linken Menüleiste den Menüeintrag Administration und wählen Sie die Kachel Datenspeicherung aus. Dort können Sie eine Datentabelle erstellen und eine Excel-Datei als Datenquelle hochladen.

Der Screenshot zeigt, wie man die Datentabelle in GBTEC Work Orchestrator benennt.

Die Datentabelle muss denselben Namen haben, den Sie im Script-Editor verwenden. In unserem Beispiel heißt die Datentabelle ceramic_mugs. Sie können diese Datentabelle in der Skriptaufgabe mit dem Befehl dataTables.get('ceramic_mugs') aufrufen. Achten Sie darauf, dass der Name in der Skriptaufgabe genau mit dem Namen der Datentabelle übereinstimmt.

Der Screenshot zeigt, wie man mit „dataTables.get()“ Daten aus der Datentabelle abruft.

Tipp

Achten Sie besonders auf die richtige Schreibweise des Datentabellennamens. Schon kleine Abweichungen oder Tippfehler können dazu führen, dass die Datentabelle nicht gefunden wird.

Wenn Sie nicht alle Spalten einer Datentabelle benötigen, können Sie mit dem Befehl .columns() festlegen, welche Spalten zurückgegeben werden sollen. Dadurch werden nur die Werte geladen, die Sie benötigen.

Das folgende Beispiel gibt nur die Spalten age und name aus der Datentabelle persons zurück:

dataTables.get("persons").query().columns("age", "name").list()

Das Ergebnis enthält nur die ausgewählten Spalten:

[
  { "age": 30, "name": "Anna" },
  { "age": 22, "name": "John" },
  { "age": 20, "name": "Ben" },
  { "age": 20, "name": "Mia" }
]

Wenn Sie .columns() mehrfach in einer Abfrage verwenden, wird nur der letzte Aufruf berücksichtigt.

dataTables.get("persons").query()
   .columns("age", "name")
   .columns("age", "name", "gender")
   .columns("age")
   .list()

In diesem Beispiel wird nur die Spalte age zurückgegeben.

Bemerkung

Die Angabe der Spaltennamen ist nicht von Groß- und Kleinschreibung abhängig.

Sie können die zurückgegebenen Zeilen mit der Funktion .filter() einschränken. Diese Funktion fügen Sie zu einer Abfrage hinzu, die Sie vorher im Code erstellt haben. Mit einem Filter werden Ihnen nur die Zeilen angezeigt, die eine bestimmte Bedingung erfüllen.

Das folgende Beispiel gibt nur die Zeilen zurück, in denen der Wert der Spalte age größer als 21 ist:

dataTables.get("persons").query().filter("age > 21").list()

Das Ergebnis enthält nur die passenden Zeilen:

[
  { "age": 30, "name": "Anna" },
  { "age": 22, "name": "John" }
]

Filter können für numerische Werte, Zeichenketten und boolesche Werte (wahr/falsch) verwendet werden. Wenn Sie einen Textwert vergleichen, z.B. einen Namen, muss dieser in Anführungszeichen stehen.

dataTables.get("persons").query().filter("name == 'Anna'").list()
dataTables.get("persons").query().filter("active == true").list()

Wenn kein Eintrag in Ihrer Tabelle die Filterbedingung erfüllt, gibt die Funktion eine leere Liste zurück.

dataTables.get("persons").query().filter("age == 99").list()

Wenn der Filterausdruck eine unbekannte Spalte enthält oder fehlerhaft ist, wird eine Fehlermeldung zurückgegeben.

Die Befehle .size() und .getColumnDefinitions() helfen Ihnen bei der Arbeit mit Datentabellen. Mit .size() können Sie die Anzahl der Einträge in der Tabelle anzeigen. Mit .getColumnDefinitions() erhalten Sie Informationen über den Aufbau der Tabelle, zum Beispiel zu Spaltennamen und Datentypen.

Wechseln Sie anschließend über den Fokus Process Design in der Kopfzeile zurück zu GBTEC Process Design. Verwenden Sie im Script-Editor die SDK-Funktion, um die gewünschte Datentabelle abzurufen. Wenn Sie die Datentabelle über die Schaltfläche Test starten abrufen, erhalten Sie eine strukturierte Ausgabe. Diese Ausgabe enthält die Daten aus der Tabelle, zum Beispiel Spaltennamen, Zeilenwerte und einzelne Felder.

Der Screenshot zeigt das Ergebnis nach Ausführung des Tests im Skript-Editor mit „dataTables.get()“.

Wenn die Datentabelle ceramic_mugs zum Beispiel Einträge wie ProduktID und Name enthält, können Sie auf diese Werte zugreifen und sie in Ihrem Prozess verwenden.

Bemerkung

Bitte beachten Sie, dass eine Datentabelle mindestens einen Eintrag enthalten muss. Andernfalls gibt es keine Daten, die weiterverarbeitet werden können.

E-Mail

Wie kann ich eine E-Mail-Vorlage erstellen?

Sie können das Versenden einer E-Mail als Aufgabe in Ihren Prozess integrieren und den Benutzern mit einer Vorlage das Versenden aus dem Formular heraus ermöglichen. Um eine E-Mail-Vorlage in GBTEC Process Design erstellen zu können, muss das entsprechende Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss vom Typ Senden sein.

Anschließend finden Sie den Eintrag E-Mail-Vorlagen-Editor im Kontextmenü der Aktivität, das Sie über einen Klicken mit der rechten Maustaste auf das Symbol der Aktivität erreichen.

Hier ist das Öffnen des E-Mail-Vorlagen-Editors in GBTEC Process Design über das Kontextmenü der Aktivität gezeigt.

Alternativ können Sie den Editor über den Process Execution Editor in der Registerkarte Optionen der Aktivität öffnen.

In den oberen Feldern können Sie den Empfänger im Feld An, die E-Mail-Adressen in den Feldern Antworten an, Cc und Bcc sowie einen Betreff eingeben. In das darunter liegende Textfeld können Sie die Vorlage verfassen. In dessen Kopfzeile stehen Ihnen verschiedene Formatierungen zur Verfügung.

Der Screenshot zeigt den E-Mail-Vorlagen-Editor in GBTEC Process Design. Im Text-, im "Antworten an"- und im Empfängerfeld sind demonstrativ Prozessvariablen verwendet.

Mit der Funktion An haben Sie zusätzlich die Möglichkeit, Benutzergruppen anzugeben. Die E-Mail wird dann an alle Mitglieder der angegebenen Benutzergruppe gesendet.

Der Screenshot zeigt den E-Mail-Vorlagen-Editor in GBTEC Process Design und zusätzlich das *An*-Feld.

Bemerkung

Bitte beachten Sie, dass bei der Angabe mehrerer Empfänger in einer Sendeaufgabe die einzelnen E-Mail Adressen durch ein Semikolon getrennt werden müssen. Geben Sie die Empfänger beispielsweise in folgendem Format ein {{email1}}; {{email2}}. Es ist ebenfalls möglich, eine E-Mail-Adresse gemeinsam mit einem Gruppennamen zu verwenden, beispielsweise {{email1}}; Gruppenname. Nur auf diese Weise werden alle Empfänger korrekt berücksichtigt.

Bemerkung

Bitte beachten Sie, dass Sie keine geschweiften Klammern ({{}}) für Benutzergruppen verwenden.

Mit der Funktion Antworten an können Sie genau eine E-Mail-Adresse angeben, an die alle Antworten auf Ihre gesendete E-Mail weitergeleitet werden sollen.

Der Screenshot zeigt den E-Mail-Vorlagen-Editor in GBTEC Process Design und zusätzlich das *Antworten an*-Feld.

Bemerkung

Bitte beachten Sie, dass das Feld Antworten an nur berücksichtigt wird, wenn die Option E-Mail automatisch senden aktiviert ist. Wenn jedoch mehr als eine E-Mail im Feld Antworten an angegeben ist und die E-Mail automatisch versendet wird, ändert sich der Status der Sendeaufgabe von In Bearbeitung auf Fehler. Bei manuell gesendeten E-Mails wird das Feld Antworten an ignoriert.

In allen Feldern des Editors können Sie auch Prozessvariablen einbinden, so dass sich Ihre Vorlage in den Vorgängen dynamisch anpasst. Im Formular eines Vorgangs in GBTEC Work Orchestrator werden die Variablen durch die Werte ersetzt, die in den vorhergehenden Schritten des Prozessablaufs gesetzt wurden. Prozessvariablen können in doppelten geschweiften Klammern eingeschlossen werden, z.B. {{VariableName}}.

Bei der Eingabe einer Variable als Platzhalter steht Ihnen die Auswahl zwischen JUEL-Ausdruck und String-Ersetzung zur Verfügung. Die gewünschte Variante legen Sie direkt im Drop-Down-Menü im oberen Bereich in der Option Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste fest.

Der Screenshot zeigt Ihnen die Auswahl zwischen "JUEL-Ausdruck" und "String-Ersetzung" im Drop-Down-Menü im oberen Bereich des "Process Execution Editors".

Bitte beachten Sie, dass beide Varianten nicht gleichzeitig unterstützt werden. Diagramme, die vor der 8.0.0 Version erstellt wurden, verwenden automatisch die bisherige String-Ersetzungslogik. Für neu erstellte Diagramme hingegen ist nun standardmäßig die JUEL-Variante vorausgewählt. Unabhängig davon können Sie die gewählte Option jederzeit anpassen, jedoch wird die Umstellung von neuen Diagrammen auf die String-Ersetzung nicht empfohlen.

Tipp

Weitere Informationen über JUEL-Ausdrücke erfahren Sie hier.

Bemerkung

Bitte beachten Sie, dass Sie Prozessvariablen mit html-formatierten Werten im Texteditor einbinden können. Bei formatierten Werten müssen Sie den Tag “ -html“ (Achtung: mit Leerzeichen!) an den Prozessvariablenname anhängen. Ansonsten wird das Format nicht verarbeitet. Wenn in Ihrem Prozess z.B. die Werte der Prozessvariablen {{CompanyName}} formatiert eingegeben werden (z. B. fett durch „<b>GBTEC Software AG</b>“), verwenden Sie in der E-Mail-Vorlage den Platzhalter mit dem html-Tag {{CompanyName -html}}, um den Wert in diesem Format (im Beispiel fett) auszugeben.

Wie kann ich Prozessvariablen in einer E-Mail-Vorlage verwenden?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie Prozessvariablen direkt in einer E-Mail-Vorlage verwenden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Öffnen Sie anschließend GBTEC Process Design und gehen Sie über die linke Menüleiste zum Menüeintrag Diagramme. Dort können Sie, entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken.

Damit Sie eine E-Mail-Vorlage verwenden können, muss das entsprechende Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss den Typ Senden haben. Öffnen Sie das Diagramm. Wählen Sie eine Aktivität aus und öffnen Sie anschließend in der rechten Seitenleiste in der Registerkarte Optionen den Process Execution Editor. Alternativ können Sie mit der rechten Maustaste auf die gewünschte Aktivität klicken und im Kontextmenü den Eintrag E-Mail-Vorlagen-Editor auswählen. Anschließend können Sie über die Schaltfläche Prozessvariablen die gewünschten Prozessvariablen auswählen.

Der Screenshot zeigt die Schaltfläche "Prozessvariablen" im "E-Mail-Vorlagen-Editor".

In diesem Menü sehen Sie alle Variablen, die im Prozess verwendet werden. Die Variablen sind in alphabetischer Reihenfolge sortiert. Wenn im Prozess keine Variablen definiert sind werden keine Variablen angezeigt. Mit der Suchfunktion können Sie gezielt nach einer bestimmten Prozessvariable suchen.

Der Screenshot zeigt das Auswahlmenü für Prozessvariablen im "E-Mail-Vorlagen-Editor" mit der zugehörigen Suchleiste und einer alphabetisch sortierten Liste der verfügbaren Variablen.

Sie können die gewünschten Prozessvariablen direkt in Ihrer E-Mail-Vorlage verwenden. Ziehen Sie die entsprechende Variable per Drag & Drop in das entsprechende Feld der E-Mail-Vorlage.

Hinweis

Bitte beachten Sie, dass Sie die Drag & Drop Funktion nur nutzen können, wenn Sie die Maus auf die Schaltfläche rechts neben der Prozessvariable platzieren.

Wenn die E-Mail versendet wird, ersetzt das System die eingefügte Prozessvariable automatisch durch ihren aktuellen Wert. Die E-Mail-Vorlage wird dabei nicht geändert.

Hinweis

Bitte beachten Sie, dass die Stelle in der E-Mail leer bleibt, wenn für eine Prozessvariable kein Wert vorhanden ist.

Wie kann ich eine E-Mail automatisch versenden?

Als ProcessApp Creator haben Sie die Möglichkeit E-Mails automatisch versenden zu können. Dafür müssen Sie im E-Mail-Vorlagen-Editor auf den Reiter Einstellungen klicken. Hier können Sie festlegen, dass Ihre E-Mails automatisch versendet werden. Wählen Sie dazu die Option E-Mail automatisch senden aus. Wenn Sie diese Aufgabe in GBTEC Work Orchestrator starten, wird die E-Mail automatisch von einer no reply Adresse versendet. Wenn Sie in Ihrer Vorlage Prozessvariablen verwenden, werden diese automatisch mit ihrem jeweiligen Wert übernommen.

Der Screenshot zeigt den E-Mail-Vorlagen-Editor in GBTEC Process Design und die Auswahlmöglichkeit *E-Mail automatisch senden*.

Soll die automatisch versendete E-Mail einen Anhang enthalten, kann die gewünschte Datei bereits im Vorgang in GBTEC Work Orchestrator hinzugefügt werden. Modellieren Sie dazu eine vorgelagerte Aktivität, die mit einem Ausgabeobjekt verknüpft ist. Dies kann ein Dokument, ein Geschäftsobjekt, ein Datenspeicher oder eine Norm sein. Verknüpfen Sie dasselbe Objekt anschließend als Eingabeobjekt mit der Sendeaktivität. Der Aufgabenverantwortliche hat dann im Formular die Möglichkeit, eine Datei dort hochzuladen und die Aufgabe abzuschließen. Sobald die Sendeaufgabe gestartet wird, wird die Datei automatisch als Anhang hinzugefügt.

Bemerkung

Bitte beachten Sie, dass die Eingabe nur dann als Anhang hinzugefügt wird, wenn die Option E-Mail automatisch senden aktiviert ist.

Hier ist eine Aktivität vom Typ "Senden" mit einem Dokument als Input abgebildet.

Im obigen Beispiel ist das Dokument „Rechnung“ die Ausgabe der Aufgabe „Rechnung erstellen“. Es wird auch als Eingabe an der Sendeaufgabe „Rechnung an Kunden senden“ modelliert. Der Anhang der E-Mail ist die zuletzt im Vorgang hochgeladene Datei. Wenn der Verantwortliche eine neue Datei(version) hochlädt, während er die Aufgabe „Rechnung überarbeiten“ bearbeitet, wird diese an die E-Mail angehängt.

Wenn Ihre Prozessvariablen keinen oder einen leeren Wert haben, wird eine Fehlermeldung ausgegeben und das Versenden wird zu einer manuellen Benutzeraufgabe. Alternativ können Sie die Option Platzhalter bei fehlenden Prozessvariablen durch leere Werte ersetzen auswählen. In diesem Fall werden Prozessvariablen, die keinen Wert haben, als leerer Text eingefügt.

Der Screenshot zeigt den E-Mail-Vorlagen-Editor in GBTEC Process Design und die Auswahlmöglichkeit *Platzhalter bei fehlenden Prozessvariablen durch leere Werte ersetzen*.

Tipp

Verwenden Sie den Formular-Editor, um die Prozessvariablen der Benutzer in vorherigen Schritten abzufragen.

Warnung

Beim manuellen Versenden einer E-Mail wird nur eine bestimmte Länge unterstützt. Überschreitet die Vorlage diese Länge, wird die E-Mail abgeschnitten und im E-Mail-Programm nur teilweise angezeigt. Diese Einschränkung besteht nicht, wenn die E-Mail automatisch versendet wird.

Wie kann ich eine E-Mail-Testkonfiguration einrichten?

Als ProcessApp Creator haben Sie die Möglichkeit, eine Testkonfiguration für E-Mails vorzunehmen. Öffnen Sie dazu im E-Mail-Vorlagen-Editor den Reiter Einstellungen. Im Abschnitt E-Mail Testkonfiguration stehen Ihnen zwei Optionen zur Verfügung.

An definierten Empfänger in der Studio-Umgebung senden: Wenn Sie diese Option aktivieren und den Prozess veröffentlichen, werden E-Mails in der Studio-Umgebung (Entwicklungsumgebung) an die im Prozess definierten Empfänger gesendet. Im Betreff jeder E-Mail wird automatisch der Zusatz [Test mail] ergänzt.

An definierten Empfänger in der Test-Umgebung senden: Wenn Sie diese Option aktivieren und den Prozess veröffentlichen, werden E-Mails in der Test-Umgebung an die im Prozess hinterlegten Empfänger gesendet. Im Betreff jeder E-Mail wird automatisch der Zusatz [Test mail] ergänzt.

Der Screenshot zeigt die Option, im E-Mail-Vorlagen-Editor unter dem Reiter "Einstellungen" eine E-Mail-Testkonfiguration einzurichten.

Wenn Sie beide Optionen aktivieren, werden die E-Mails an die im Prozess hinterlegten Empfänger sowohl in der Studio-Umgebung als auch in der Test-Umgebung gesendet. Auch in diesem Fall wird im Betreff automatisch der Zusatz [Test mail] ergänzt.

Zusätzlich haben Sie die Möglichkeit, alternative E-Mail-Adressen für Testzwecke zu hinterlegen. Diese können im Eingabefeld Alternative E-Mail-Adressen für Tests eingeben definiert werden. Wenn alternative Testadressen eingetragen sind und der Versand an reale Empfänger deaktiviert ist, werden E-Mails ausschließlich an diese Testadressen gesendet.

Der Screenshot zeigt die Option, alternative Test-E-Mail-Adressen zu hinterlegen.

Warnung

Bitte beachten Sie, dass die alternativ hinterlegten Test-E-Mail-Adressen nur berücksichtigt werden, solange die Optionen An definierten Empfänger in der Studio-Umgebung senden und An definierten Empfänger in der Test-Umgebung senden nicht aktiviert sind. Sobald eine dieser Optionen aktiviert ist, werden die alternativ eingetragenen Testadressen ignoriert und die E-Mails ausschließlich an die im Prozess hinterlegten Empfänger gesendet.

Bemerkung

Bitte beachten Sie, dass mehrere alternative Test-E-Mail-Adressen durch ein Semikolon oder ein Komma getrennt werden müssen.

Hinweis

Bitte beachten Sie, dass derzeit keine Benutzergruppen als alternative Test-E-Mail-Adressen hinterlegt werden können.

Service Aufgabe

Mit einer Service Aufgabe automatisieren Sie wiederkehrende Schritte in Ihrem Prozess, ohne dafür Programmcode schreiben zu müssen. Im Konfigurationsdialog der Service Aufgabe stehen Ihnen dazu vier Optionen zur Verfügung:

  • REST: Tauschen Sie Daten mit externen Systemen aus, zum Beispiel um Informationen aus einer anderen Anwendung abzurufen oder dorthin zu übertragen.

  • Berichte: Erstellen Sie automatisch ein Ausgabedokument, anstatt es manuell zusammenzustellen.

  • Bildverarbeitung: Extrahieren Sie Daten aus einem hochgeladenen Bild, zum Beispiel einer Rechnung, ohne sie manuell zu erfassen.

  • MCP-Server: Rufen Sie ein Tool eines MCP-Servers auf, ohne eine eigene REST Abfrage zu konfigurieren.

Wie Sie eine Aktivität als Service Aufgabe festlegen und den Konfigurationsdialog öffnen, erfahren Sie in den folgenden Abschnitten.

REST

GBTEC Work Orchestrator bietet Ihnen die Möglichkeit, Daten über REST Endpoints auszutauschen. Dabei werden die REST Abfragen während der Modellierung in GBTEC Process Design definiert und in GBTEC Work Orchestrator automatisiert ausgeführt. Die Ergebnisse der Abfragen werden in den Prozessvariablen der einzelnen Vorgänge gespeichert und können so für weitere Aufgaben im Vorgangsablauf verwendet und angezeigt werden.

Bemerkung

Für die Gestaltung einer REST Abfrage steht Ihnen der nachfolgend beschriebene REST Konfigurator zur Verfügung. Diese Konfiguration wird vorrangig verwendet. Wenn Sie in einer früheren Version eine REST Abfrage mit Hilfe der Service Call Attribute definiert haben und keine Einstellungen im REST Konfigurator vorgenommen haben, werden die Service Call Attribute als Fallback verwendet.

Wie kann ich meine REST Abfrage konfigurieren?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie in GBTEC Process Design eine REST Abfrage konfigurieren. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, wechseln Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile zu GBTEC Process Design. Markieren Sie das Diagramm als ausführbaren Prozess und legen Sie für die Aktivität den Aufgabentyp Service fest.

Klicken Sie anschließend mit der rechten Maustaste auf die Aktivität und wählen Sie im Kontextmenü die Option Service Konfiguration.

In diesem Screenshot wird das Kontextmenü einer Service-Aktivität mit der Option "Öffne REST Konfiguration" dargestellt.

Alternativ können Sie den Editor auch öffnen, indem Sie die Aktivität auswählen und in den Optionen die Rubrik Process Execution Editor wählen. Dort finden Sie die Schaltfläche Editor öffnen, mit der Sie die Service Konfiguration öffnen.

Daraufhin erscheint der Konfigurationsdialog für die REST Abfrage. Klicken Sie auf die Option REST.

Der Screenshot zeigt die Option zum Erstellen einer REST-Konfiguration.

Definieren Sie nun in drei Schritten Ihre REST Abfrage. Klicken Sie jeweils auf die Felder, um diese zu bearbeiten oder um eine der verfügbaren Optionen zu wählen.

Tipp

Sie können Ihre REST Abfragen mithilfe von Prozessvariablen dynamisch gestalten. Dadurch können zum Beispiel Header-Daten oder der Request-Body von den Daten des Vorgangs abhängen.

1. Verbindung

Der Screenshot zeigt das Dialogfenster "REST Konfiguration", in dem der erste Schritt "Verbindung" definiert werden kann.

  • HTTP Methode: Wählen Sie hier die gewünschte HTTP Methode für Ihre REST Abfrage aus. Die unten aufgeführten HTTP Methoden stehen zur Verfügung. Wenn nicht anders angegeben, ist die Methode vom Typ GET.

  • DELETE

  • GET

  • HEAD

  • PATCH

  • POST

  • PUT

  • OPTIONS

  • TRACE

  • URL: Geben Sie hier den URL-Pfad Ihres REST Endpoints ein (z.B.: http://serviceUrl:port/service/1).

  • Authentifizierung: Hier können Sie einstellen, welche Art der Authentifizierung für Ihre REST Abfrage erforderlich ist. Hierzu stehen Ihnen verschiedene Möglichkeiten zur Verfügung:

  • Keine Authentifizierung: Sie benötigen für den gewünschten Service keine weitere Authentifizierung und müssen daher auch keine weiteren Eingabefelder ausfüllen.

  • Basic Authentication: Bei dieser Art der Authentifizierung müssen Sie einen Benutzernamen und ein Passwort angeben. Die beiden Eingabefelder erscheinen automatisch, wenn Sie diese Option wählen.

  • OAuth2: Wenn Sie diese Option wählen, erscheinen drei neue Eingabefelder, die Sie ausfüllen müssen: Client ID, Client secret und Authentication URL. Über das Augen-Symbol am rechten Rand können Sie das Client secret ein- und ausblenden.

  • API Key: Nach Auswahl dieser Option erscheinen zwei Eingabefelder: Key und Value, in die Sie Ihr Key-Value-Paar eintragen können. Darunter legen Sie fest, ob das Key-Value-Paar dem Header oder den Anfrageparametern hinzugefügt werden soll.

Klicken Sie auf Weiter, um zum zweiten Schritt zu gelangen. Alternativ können Sie auch die Reiter Verbindung, Request und Response auswählen, um zwischen den Schritten zu wechseln.

2. Request

Der Screenshot zeigt das Konfigurieren des "Requests".

Die Eingabefelder erscheinen, wenn Sie eine der Request-Optionen auswählen.

  • Request Header: Tragen Sie hier in einer Key-Value-Tabelle alle Header Daten ein, die bei der REST Abfrage übertragen werden. Durch das Klicken auf das Pluszeichen können Sie einen neuen Eintrag hinzufügen. Um einen Eintrag zu löschen, wählen Sie das Papierkorb-Symbol neben dem Eintrag.

  • Body: Hier können Sie den Inhalt angeben, der bei der REST Abfrage übertragen wird. Wählen Sie im Drop-Down-Menü Typ eine der folgenden Optionen aus:

  • JSON: Mit dieser Option können Sie den Inhalt im Feld Request Body in einer JSON-Struktur eingeben.

  • Binary (Datei): Wählen Sie diesen Typ, um den Inhalt des Request Body aus einer Datei einzulesen. In diesem Fall wird nur der Inhalt übernommen.

  • Multipart-form (Datei): Bei diesem Typ erscheint eine Key-Value-Tabelle, bei der der Request Body teilweise aus einer Datei generiert wird. Nachdem Sie einen Key eingegeben haben, können Sie unter Type zwischen Text und Datei wählen. Wenn Sie Text wählen, können Sie Text inklusive Variablen als Platzhalter eingeben. Unter Datei können Sie einen Identifizierer für eine Datei angeben. Sie können auch mehrere Dateien in die Tabelle eingeben, indem Sie auf Neue Zeile hinzufügen klicken und eine Kombination aus Text und Datei erstellen.

Um den Inhalt einer Datei einzulesen, erscheint ein weiteres Feld, in dem Sie die Datei verlinken können. Dies geschieht als Prozessvariable über den Identifizierer. Eine genauere Erklärung finden Sie im verlinkten Abschnitt.

Wenn Sie eine Variable als Platzhalter eingeben, können Sie zwischen JUEL-Ausdruck und String-Ersetzung wählen. Die gewünschte Variante legen Sie im Drop-Down-Menü oben im Bereich Process Execution Editor fest. Diesen Bereich finden Sie in der Registerkarte Optionen in der rechten Seitenleiste.

Der Screenshot zeigt Ihnen die Auswahl zwischen "JUEL-Ausdruck" und "String-Ersetzung" im Drop-Down-Menü im oberen Bereich des "Process Execution Editors".

Das System unterstützt beide Varianten nicht gleichzeitig. Diagramme, die vor der Version 8.0.0 erstellt wurden, verwenden automatisch die bisherige String-Ersetzungslogik. Für neu erstellte Diagramme ist standardmäßig die JUEL-Variante vorausgewählt. Sie können die gewählte Option jederzeit anpassen. Die Umstellung von neuen Diagrammen auf die String-Ersetzung wird jedoch nicht empfohlen.

Tipp

Weitere Informationen zu JUEL-Ausdrücken finden Sie hier.

3. Response

Der Screenshot zeigt das Konfigurieren der "Response".

  • Connection Timeout in Sekunden: Hier können Sie ein Zeitlimit (in Sekunden) für Ihre REST Abfrage festlegen.

  • Erwarteter HTTP-Statuscode: Hier können Sie einen oder mehrere Statuscodes festlegen, die Sie als Rückmeldung auf Ihre REST Abfrage erwarten.

  • Response Typ: Hier können Sie angeben, ob die Daten als JSON-Element oder als Datei zurückgegeben werden. Eine Erläuterung zu REST Abfragen mit Dateien finden Sie hier.

  • Response Mapping: Hier können Sie festlegen, ob die zurückgegebenen Daten als Prozessvariablen gespeichert und verwendet werden sollen. Die Standardeinstellung ist Automatisch. Wenn Sie Kein auswählen, werden die Rückmeldungen nicht als Prozessvariablen verarbeitet. In diesem Fall werden alle Response Codes akzeptiert.

Hier wird das "X-Symbol" und die Schaltfläche "Speichern" in der Kopfleiste der REST Konfiguration gezeigt.

Klicken Sie auf die Schaltfläche Speichern oben rechts, um die Konfiguration zu speichern. Wenn Sie die Änderungen nicht speichern möchten, klicken Sie auf das direkt daneben angeordnete X-Symbol, um den Dialog zu schließen.

Unabhängig vom Response Mapping wird eine _response-Variable gespeichert. Über diese Variable können Sie auf Request Header und HTTP-Statuscode zugreifen. Wenn Sie mehrere Service Aufgaben konfiguriert haben, wird die _response-Variable nach deren Ausführung überschrieben. Auf die _response-Variable können Sie zum Beispiel über _response.headers.NAME[0] oder _response.headers["NAME-NAME"][0] (für Keys mit Bindestrich) zugreifen. Dabei werden alle Response Codes akzeptiert.

Sie können JSON-Objekte und Arrays in der Response der REST-Abfrage in verschiedenen Formaten verarbeiten. Jedes Element im JSON-Objekt, das vom REST Endpoint zurückgegeben wird, speichert das System in der Variable _response.body.

Bemerkung

GBTEC Work Orchestrator speichert keine Informationen aus den _response.headers, wenn eine Service Aufgabe mit REST Abfrage einen Fehlerstatuscode wie 4XX oder 5XX zurückgibt. Das System speichert dann nur den _response.statusCode.

Hinweis

Die _response-Variable können Sie nur für den aktiven Hauptvorgang und seine untergeordneten Vorgänge verwenden.

Bemerkung

Wenn Sie eine REST Abfrage verwenden, verarbeitet das System automatisch HTTP-Weiterleitungen mit den Statuscodes 301, 302, 307 oder 308. Die REST Abfrage ist dabei auch dann erfolgreich, wenn der REST Endpoint auf eine neue Zieladresse umleitet. Der Prozess erhält die Antwort des Zielservers wie gewohnt.

Warnung

Aufgaben, die während eines Systemneustarts aktiv waren, setzt das System automatisch in den Fehlerstatus. Dies betrifft sowohl Skript- als auch Serviceaufgaben, da sie durch den Neustart nicht abgeschlossen wurden. Das System weist diese Aufgaben den zuständigen Nutzern zu und löst eine Benachrichtigung per E-Mail aus. Sie können diese Aufgaben wie gewohnt erneut starten.

Wie kann ich meine konfigurierte REST Abfrage testen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie eine konfigurierte Service-Aufgabe für eine REST-Abfrage testen. Dazu müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, wechseln Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile zu GBTEC Process Design. Mit der Funktion Testen prüfen Sie Ihre Konfiguration direkt, ohne den Prozess vorher bereitstellen zu müssen.

Klicken Sie auf eine freie Stelle im Arbeitsbereich des Diagramms und wechseln Sie zur Registerkarte Details. Wählen Sie dort die Attributgruppe Automatisierung aus und markieren Sie Ihren Prozess als ausführbaren Prozess. Wählen Sie danach eine Aktivität aus und legen Sie in der Registerkarte Details den Aufgabentyp Service fest. Öffnen Sie anschließend das Kontextmenü der Aktivität und wählen Sie den Eintrag Service Konfiguration. Öffnen Sie dann die REST-Abfrage für Service-Aufgaben und wechseln Sie zum Bereich Testen.

Im Konfigurationsbereich der Service-Aufgabe finden Sie nach der Eingabe der REST-Konfiguration die Schaltfläche Testen. Mit dieser Schaltfläche führen Sie die aktuell konfigurierte REST-Abfrage mit den angegebenen Parametern aus.

Der Screenshot zeigt wie Sie eine Service Konfiguration testen können.

Wählen Sie die Schaltfläche Antwort aus, um das Ergebnis der REST Abfrage nach dem Test zu sehen. Bei einer erfolgreichen Abfrage erscheint eine Bestätigungsmeldung. Bei fehlerhaften Einstellungen, zum Beispiel durch eine falsche URL oder fehlende Parameter, erscheint stattdessen eine Fehlermeldung.

Wenn Sie in der REST Konfiguration Prozessvariablen verwenden, können Sie im Testdialog Beispielwerte hinterlegen. Das System setzt diese Werte beim Test automatisch ein, um die Abfrage realistisch zu prüfen.

Bemerkung

Der Test läuft ausschließlich mit den aktuell konfigurierten Parametern. Eine Prozessinstanz ist dafür nicht erforderlich.

Wie erstelle ich dynamische REST Abfragen mit Variablen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie Ihre REST Abfragen mit Prozessvariablen dynamisch gestalten. Verwenden Sie dazu Ihre Prozessvariablen im Request Body der REST Konfiguration. Führen Sie die Variablen dabei wie folgt auf: {{VariablenName}}.

Wenn Sie beispielsweise den Namen und das Alter eines Mitarbeiters über eine GET-REST-Abfrage erhalten haben, können Sie diese Werte als Variablen in der folgenden REST-Abfrage verwenden. Das Ergebnis der ersten GET REST Abfrage könnte etwa so aussehen: {"name": "Max Mustermann", "age": 35}. Diese Werte verwenden Sie dann in der nächsten POST-REST-Abfrage im Feld Request Body (bei der Auswahl von JSON für das Feld Body). Ein Beispiel dafür ist {"managerName": "{{name}}", "managerAge": "{{age}}"}.

Der Screenshot zeigt eine beispielhafte Konfiguration einer REST Abfrage unter dem Einsatz von Prozessvariablen.

Sie können Variablen auch in der Verbindung und in der Response verwenden.

Wie kann ich gefilterte Prozessvariablen aus einer Service-Antwort definieren?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie in einer REST Konfiguration die zurückgegebenen Daten gezielt steuern, indem Sie JSON Antworten filtern und Variablen individuell benennen. Um den REST Konfigurator öffnen zu können, müssen Sie sich in GBTEC Process Design befinden. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Öffnen Sie anschließend in der linken Menüleiste den Menüeintrag Diagramme und wählen Sie ein Diagramm aus dem gewünschten Repository aus. Checken Sie das Diagramm anschließend aus, um es bearbeiten zu können.

Damit sich der REST Konfigurator in GBTEC Process Design öffnen lässt, muss das Diagramm als ausführbarer Prozess markiert sein. Der Aufgabentyp der Aktivität muss vom Typ Service sein. Klicken Sie anschließend mit der rechten Maustaste auf die Aktivität und wählen Sie im Kontextmenü die Option Service Konfiguration.

Alternativ können Sie den Editor auch öffnen, indem Sie die Aktivität auswählen und in der Registerkarte Optionen in der rechten Seiteneiste den Process Execution Editor auswählen. Dort finden Sie die Schaltfläche Editor öffnen, mit der Sie die Service Konfiguration öffnen können.

Der Screenshot zeigt die Schaltfläche "Service Konfigurator".

Wenn Sie eine REST Konfiguration verwenden und der Response Typ JSON ist, können Sie im Drop-down Response Mapping die Option Manuell auswählen. Dann können Sie in der Liste festlegen, welche Variablen aus der JSON Antwort übernommen werden. Um eine neue Variable hinzuzufügen, klicken Sie auf die Schaltfläche Neue Zeile hinzufügen. Sie können die Variablen dort auch umbenennen. So bestimmen Sie, welche Daten aus der Service Antwort im finalen Payload enthalten sind.

Der Screenshot zeigt die Möglichkeit neue Variablen im "Service Konfigurator" hinzuzufügen.

Definieren Sie eine Liste mit Quellvariablen. Das sind die Variablen aus der Service Antwort, die verwendet werden sollen. Nur die Variablen in dieser Liste werden in das finale Payload übernommen. Alle anderen Variablen aus der ursprünglichen Antwort werden nicht übernommen.

Für jede übernommene Variable können Sie eine Zielvariable festlegen und so den Namen der Variable ändern. Wenn Sie beispielsweise die Antwortvariable customer_id hinzufügen und als Zielnamen customerId festlegen, zeigt das finale Payload nur noch die Variable customerId. Der ursprüngliche Name customer_id erscheint dort nicht mehr.

Hinweis

Das System ignoriert Variablen, die nicht in der gefilterten Liste enthalten sind. Wenn die Service Antwort beispielsweise eine Variable internalFlag enthält, die nicht in der Liste steht, erscheint sie nicht im finalen Payload.

Wenn Sie im manuellen Mapping-Modus keine Quellvariable definieren, bleibt das erzeugte Payload leer. So steuern Sie, welche Daten aus der Service-Antwort weiterverarbeitet werden.

Hinweis

Wenn Sie eine Zielvariable angeben, aber keine passende Quellvariable definieren, ignoriert das System die Zuordnung. Wenn Sie umgekehrt eine Quellvariable angeben, aber keine Zielvariable definieren, zeigt der Editor automatisch einen Platzhalter an. Dieser basiert auf dem bereinigten Namen der Quellvariable und wird nach dem Speichern automatisch zur Zielvariable.

Um die Auswahl der Variablen zu erleichtern, gibt es im Editor eine Autocomplete-Funktion. Nachdem Sie die REST Konfiguration getestet haben, können Sie im Feld für die Quellvariable einen Namen eingeben. Wenn Sie zum Beispiel cus eingeben, zeigt Ihnen das System automatisch den Vorschlag customer_id an.

Hinweis

Der Zielname darf nur Buchstaben (A-Z, a-z), Zahlen (0-9) und Unterstriche (_) enthalten. Leerzeichen und Sonderzeichen sind nicht erlaubt. Wenn Sie keinen Zielnamen angeben, bereinigt das System die Quellvariable automatisch.

Wie kann ich Dateien in meinen REST Abfragen nutzen?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie bei der Konfiguration einer REST Abfrage den Request Body aus einer Datei einlesen. Die Datei für den Request Body stellen Sie als Anlage einer vorherigen Aufgabe bereit. Sie können auch eine Datei als Rückgabe einer REST Abfrage erhalten. Das System hängt diese Datei dann als Anlage an die Service Aufgabe an. Um Ihre REST Abfrage mit Dateien zu konfigurieren, führen Sie die folgenden Schritte aus.

Request Body aus einer Datei: Wenn Sie ein Dokument über eine REST Abfrage einlesen und dem Benutzer als Ausgabe zur Verfügung stellen möchten, können Sie wie folgt vorgehen. Modellieren Sie in Ihrem Diagramm eine Aktivität, die als Service Aufgabe gekennzeichnet ist. Modellieren Sie an dieser Aktivität ein Dokument und kennzeichnen Sie es als Output. Pflegen Sie anschließend das Attribut Identifizierer des Dokuments.

Hier wird die Modellierung des Output Dokuments an einer vorangestellten Aufgabe gezeigt. Das Attribut "Identifizierer" hat denselben Wert wie das Feld "Datei" in der Konfiguration des Request Bodys.

Modellieren Sie die Service Aufgabe im Prozessfluss nach der Aktivität mit Output. Bei der Konfiguration der REST Abfrage wählen Sie im Schritt Request für den Body den Typ Binary (Datei) (oder Multipart-form (Datei) bei einem Datenformular-Format). Daraufhin erscheint das Eingabefeld Datei. Geben Sie dort einfach den Identifizierer des zuvor modellierten Dokuments ein.

Wenn Sie den JSON Body Type mit einem passenden Request Body verwenden (zum Beispiel { „file“: „{{fileID}}“ }), können Sie den Identifizierer als Platzhalter in Service Aufgaben verwenden. Das System ersetzt den Platzhalter durch den Dateiinhalt des Identifizierers. Dieser liegt als Base64-kodierte Daten vor.

Um eine Datei in Ihrem laufenden Vorgang hochzuladen, müssen Sie ein Ausgabedokument in einer vorherigen Aufgabe hinzufügen. Bei der Ausführung der Service Aufgabe wird die neueste Version der Dateidaten abgerufen, in den JSON-Body eingefügt und der Platzhalter automatisch ersetzt.

Datei als Rückgabe: Modellieren Sie die Aktivität Ihrer REST Abfrage in GBTEC Process Design mit mindestens einem Ausgabedokument. Pflegen Sie auch hier das Attribut Identifizierer des Dokuments, um es in die Response der REST Abfrage einzubinden. Wenn Sie als Response Typ die Option Datei wählen, erscheint ein Feld, in das Sie den Identifizierer eingeben können. Umschließen Sie den Identifizierer dabei jeweils mit zwei geschweiften Klammern.

Hier wird die Modellierung des Output Dokuments an der Service Aufgabe gezeigt. Das Attribut "Identifizierer" hat denselben Wert wie das Feld "Datei-ID im Prozess" in der Konfiguration der REST Response.

Wenn der Identifizierer des Dokuments mit einer Eigenschaft der REST Abfrage übereinstimmt und diese Eigenschaft als Base64-kodierte Daten formatiert ist, dekodiert das System den Dateiinhalt der Eigenschaft und fügt ihn automatisch als Ausgabedokument hinzu. Der Name dieser Datei entspricht dem Namen der bereits vorhandenen Datei. Falls kein Name vorhanden ist, benennt das System die Datei automatisch nach dem Identifizierer und dem Dateityp (zum Beispiel .pdf). Sie können den Namen bei Bedarf ändern.

Wenn eine Service Aufgabe mit einer REST Abfrage eine Datei mit einem definierten Identifizierer bereitstellt und Sie diese über einen Dokumentausgabeknoten speichern, erstellt das System automatisch eine Dateivariable mit den zugehörigen Metadaten. Sie können diese Metadaten im Prozess genauso wie bei jeder anderen Dateivariable nutzen.

Bemerkung

Wenn mehrere Dateien mit einem Identifizierer übereinstimmen und die REST Abfrage auf sie zutrifft, hängt das System bei Base64-kodierten Daten alle Dateien als Ausgabedokument an die Aktivität an.

Warnung

Wenn Sie eine im Base64-Format kodierte Datei mit einem definierten Identifizierer über eine Service Aufgabe mit REST Abfrage übermitteln und über einen Dokumentausgabeknoten speichern, stellt das System die ursprüngliche Variable mit dem Dateiinhalt nicht mehr bereit. Das System entfernt die Variable, die zuvor den Dateiinhalt enthielt und mit der Datei verknüpft war. Der Dateiname besteht aus dem übergebenen Identifizierer und der passenden Dateierweiterung. Sie können auf die Metadaten wie bei jeder anderen Dateivariable vollständig zugreifen.

Nachdem die REST Abfrage in Ihrem Vorgang ausgeführt wurde, können Sie die Datei wie bei der manuellen Bearbeitung von Dateien in der Service Aufgabe herunterladen.

Wie kann ich mehrere Werte als erwartete Antwortstatuscodes für REST Abfragen definieren?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie mehrere Werte als erwartete Antwortstatuscodes für REST-Abfragen definieren. Die Definition erfolgt in GBTEC Process Design. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Gehen Sie über die linke Menüleiste zum Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Öffnen Sie ein Diagramm.

Klicken Sie auf den Arbeitsbereich des Diagramms und wechseln Sie zur Registerkarte Details. Wählen Sie dort die Attributgruppe Automatisierung aus und markieren Sie Ihren Prozess als ausführbaren Prozess. Wählen Sie danach eine Aktivität aus und typisieren Sie diese in der Registerkarte Details als Aufgabentyp Service. Öffnen Sie dann das Kontextmenü der Aktivität und wählen Sie den Eintrag Service Konfiguration. Öffnen Sie nun die REST-Abfrage für Service-Aufgaben und wechseln Sie zum Bereich Response. Im Eingabefeld Erwarteter HTTP-Statuscode können Sie mehrere Statuscodes definieren. Sie können sowohl feste Statuscodes (zum Beispiel 200) als auch reguläre Ausdrücke wie 200|201 (beide Statuscodes gelten) oder 20. (alle Statuscodes von 200 bis 209 gelten) sowie Kombinationen davon verwenden.

Wenn der empfangene Statuscode dem definierten Muster entspricht, bewertet das System die Antwort als erfolgreich. Andernfalls behandelt das System die Antwort als Fehler.

Bemerkung

Das Muster kann Zahlen, Punkte und Pipe-Zeichen enthalten.

Berichte

Mit der Option Berichte im Konfigurationsdialog der Service Aufgabe erstellen Sie automatisch ein Ausgabedokument im Format PDF oder DOCX, anstatt es manuell zusammenzustellen.

Wie kann ich automatisch ein Ausgabedokument erstellen?

Wenn Sie eine Service Aufgabe modelliert haben, können Sie im Editor die Berichtskonfiguration für die Dokumentenerstellung festlegen.

Der Screenshot zeigt die Auswahl der Service Konfiguration, entweder eine "REST-/oder Berichtkonfiguration" zu öffnen.

Wenn Sie die Option REST Abfrage wählen, wird die REST Konfiguration gestartet. Alternativ wird bei Auswahl der Option Berichte die Berichtskonfiguration gestartet, in der Sie das Ausgabeformat (PDF oder DOCX) festlegen können.

Wenn die Berichtsaufgabe eine Eingabe mit einer angehängten Datei in Ihrer definierten Standardsprache im DOCX-Format hat, verwendet das System diese Datei als Vorlage für den Bericht. Wenn die Berichtsaufgabe eine Ausgabe hat und diese ausgeführt wird, hängt das System das Ergebnis der Ausgabe an. Der Name der Ausgabedatei entspricht dem Namen der Vorlagendatei.

Hinweis

Wenn die Eingabe oder Ausgabe fehlt oder die Eingabe keinen Anhang enthält, erstellt das System den Bericht nicht und markiert die Aufgabe als fehlerhaft.

Enthält die Eingabe ein Designdokument, aber keinen Instanz-Anhang, ist das Designdokument die Vorlage für die Berichtserstellung. Enthält die Eingabe sowohl ein Designdokument als auch einen Instanz-Anhang, ist der Instanz-Anhang die Vorlage.

Bildverarbeitung

Mit der Option Bildverarbeitung im Konfigurationsdialog der Service Aufgabe extrahieren Sie Daten aus einem hochgeladenen Bild, zum Beispiel einer Rechnung, ohne sie manuell zu erfassen.

Wie kann ich Daten aus einem Bild analysieren und extrahieren?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie mit einer Service Aufgabe Daten aus einem Bild extrahieren und analysieren. Sie können so beispielsweise eine Adresse, eine IBAN oder Beträge aus einer Rechnung auslesen. Klicken Sie dazu auf die Option Bildverarbeitung. Dort laden Sie ein Bild hoch und konfigurieren anschließend Felder für die Datenausgabe. Legen Sie dafür für jedes Feld eine Feld-ID, einen Namen, einen Datentyp und eine Beschreibung des gewünschten Inhalts fest.

Der Screenshot zeigt die Option zum Einrichten einer Bildverarbeitung.

Nachdem Sie die Option Bildverarbeitung ausgewählt haben, öffnet sich ein Dialogfenster. Darin laden Sie auf der linken Bildschirmseite eine Bilddatei hoch. Sie können das hochgeladene Bild jederzeit ersetzen, indem Sie ein neues Bild hochladen oder es per Drag-and-Drop über das vorhandene ziehen. Um das Bild zu entfernen, klicken Sie auf das Mülleimer-Symbol oder auf die Schaltfläche Bild entfernen.

Der Screenshot zeigt die Möglichkeit ein Bild zu entfernen.

Auf der rechten Bildschirmseite fügen Sie anschließend Variablen für die Datenextraktion hinzu und konfigurieren diese. Legen Sie für jede Variable eine Feld-ID, einen Namen, einen Datentyp sowie eine Beschreibung (Prompt) fest. So definieren Sie genau, welche Informationen das System aus der hochgeladenen Bilddatei extrahiert.

Der Screenshot zeigt die Möglichkeit ein Bild hochladen zu können.

Dazu stehen Ihnen unter Ausgabevariablen definieren folgende Eingabefelder zur Verfügung:

  • ID: ID für die Variable (Pflichtfeld). Diese legt fest, in welcher Prozessvariablen die Information gespeichert wird.

  • Label: Der Name der Variable ist optional. Wenn er angegeben wird, erscheint er als Überschrift des Abschnitts. Ist kein Name vorhanden, zeigt das System stattdessen die Feld-ID an.

  • Datentyp: Gibt den Typ der zu speichernden Information an (Text, Zahl, Boolean). Andere Datentypen, wie beispielsweise Datum, unterstützt das System derzeit nicht.

  • Prompt: Freitextfeld, in dem Sie eine Anweisung an die KI formulieren können, zum Beispiel „Gib mir meine IBAN an“ oder „Lese die Adresse ohne Land aus“.

Der Screenshot zeigt die Möglichkeit Variablen zur Bildverarbeitung zu konfigurieren.

Jede Variable erscheint als eigener Abschnitt, in dem Sie über die Schaltfläche Test eine Extraktion ausführen können. Sobald Sie einen neuen Test starten, überschreibt das System das zuvor ausgegebene Ergebnis. Wenn mehrere Variablen angelegt sind, können Sie zusätzlich mit der Schaltfläche Alle testen alle Konfigurationen gleichzeitig prüfen. Möchten Sie eine weitere Extraktion hinzufügen, klicken Sie auf Weitere Variablen hinzufügen, um eine neue Zeile zu erstellen. Das System zeigt die Variablen in alphabetischer Reihenfolge an und aktualisiert sie in Echtzeit.

Der Screenshot zeigt die Möglichkeit weitere Variablen hinzuzufügen.

Hinweis

Doppelte IDs sind nicht zulässig. Wenn Sie dieselbe ID mehrfach vergeben, zeigt das System ein Fehlerbanner, öffnet die betroffenen Abschnitte und markiert die betroffenen Felder mit einem Fehlerhinweis. Sobald Sie die ID ändern (zum Beispiel von „name“ zu „sender_name“), verschwindet der Konflikt.

Hinweis

Das System stellt bereits hinzugefügte Variablen in der Prozessvariablenliste ausgegraut dar. Sie können diese nicht erneut auswählen. Wenn Sie die ID einer Variable ändern, zeigt das System sie wieder als verfügbar an.

Bemerkung

Über den folgenden Link können Sie die Einschränkungen für das Hochladen von Bildern einsehen.

MCP-Server

Ein MCP-Server stellt Tools bereit, die Sie direkt in einer Service Aufgabe aufrufen. Sie benötigen dafür kein technisches Wissen über REST Endpoints und konfigurieren auch keine eigene REST Abfrage. Ein Benutzer mit der Benutzerrolle ProcessApp Administrator legt in der Administration fest, welche MCP-Server Ihnen zur Verfügung stehen.

Wie kann ich ein Tool eines MCP-Servers aufrufen?

Wenn Sie mit der Benutzerrolle ProcessApp Creator in GBTEC Process Design eine Service Aufgabe modellieren möchten, markieren Sie Ihr Diagramm zunächst als ausführbaren Prozess. Legen Sie anschließend für die gewünschte Aktivität den Aufgabentyp Service fest.

Öffnen Sie die Service Konfiguration und wählen Sie die Option MCP-Server.

Der Screenshot zeigt die Option "MCP-Server" im Konfigurationsdialog der Service Aufgabe.

Bemerkung

Die Option MCP-Server steht Ihnen nur zur Verfügung, wenn mindestens ein MCP-Server von einem ProcessApp Administrator aktiviert wurde. Andernfalls zeigt das System den Hinweis Keine MCP-Server verfügbar an.

Legen Sie nun in drei Schritten fest, welches Tool Sie aufrufen möchten. Mit den Schaltflächen Weiter und Zurück wechseln Sie zwischen den Schritten. Ihre Eingaben bleiben dabei erhalten.

1. Server auswählen

Der Screenshot zeigt den Schritt "Server auswählen" bei der Konfiguration eines MCP-Tools.

Wählen Sie den gewünschten MCP-Server aus der Liste aus. Die Liste enthält nur MCP-Server, die ein ProcessApp Administrator aktiviert hat und ist alphabetisch sortiert.

Klicken Sie auf die Schaltfläche Weiter, um zum nächsten Schritt zu gelangen.

2. Tool auswählen

Der Screenshot zeigt den Schritt "Tool auswählen" bei der Konfiguration eines MCP-Tools.

Wählen Sie genau ein Tool des ausgewählten MCP-Servers aus. Zu jedem Tool werden der Name und eine Beschreibung angezeigt. Die Tools sind alphabetisch sortiert.

Bemerkung

Wenn der ausgewählte MCP-Server keine Tools bereitstellt, zeigt das System den Hinweis Keine Tools verfügbar an. Wählen Sie in diesem Fall einen anderen Server oder wenden Sie sich an Ihren ProcessApp Administrator.

Klicken Sie auf die Schaltfläche Weiter, um zum nächsten Schritt zu gelangen.

3. Parameter definieren

Der Screenshot zeigt den Schritt "Parameter definieren" bei der Konfiguration eines MCP-Tools.

Für das ausgewählte Tool zeigt das System automatisch ein Formular mit den zugehörigen Parametern an. Pflichtfelder sind gekennzeichnet.

Sie können in den Parametern auch Prozessvariablen als Platzhalter verwenden, zum Beispiel {{VariablenName}}. Sie können statischen Text und Prozessvariablen dabei auch kombinieren, zum Beispiel {{user.name}}.{{user.surname}}@gbtec.com.

Hinweis

Das System zeigt ausschließlich die obersten Parameter eines Tools an. Verschachtelte Parameter unterstützt es nicht.

Wenn ein Pflichtfeld leer bleibt oder fehlerhaft ausgefüllt ist, gilt die Konfiguration als unvollständig. Das System zeigt dann eine Fehlermeldung an.

Bemerkung

Wenn Sie die Parameter des ausgewählten Tools nicht konfigurieren können, zeigt das System den Hinweis Tool-Konfiguration nicht verfügbar an. Wählen Sie in diesem Fall ein anderes Tool oder wenden Sie sich an Ihren ProcessApp Administrator.

Wenn Sie die Konfiguration abgeschlossen haben, klicken Sie oben rechts auf die Schaltfläche Speichern. Das System speichert die Konfiguration daraufhin im zugehörigen Attribut der Aktivität. Anschließend schließen Sie die Service Konfiguration über das direkt daneben angeordnete X-Symbol oben rechts.

Wie kann ich ein automatisches Zeitereignis konfigurieren?

Zeitbasiertes Startereignis

In GBTEC Work Orchestrator können Prozesse entweder manuell oder automatisch über ein zeitbasiertes Startereignis gestartet werden. Ein solches Ereignis ermöglicht es, den Prozess zu einem festgelegten Zeitpunkt und bei Bedarf auch wiederkehrend zu starten. Diese Funktion steht ausschließlich für BPMN-Diagramme zur Verfügung und ist nicht für EPK-Modellierungen vorgesehen.

Hinweis

Bitte beachten Sie, dass zeitbasierte Startereignisse nur in der Produktivumgebung ausgeführt werden, das heißt für veröffentlichte Prozesse. In den Test- und Entwicklungsumgebungen werden keine Vorgänge gemäß der unten erläuterten Cron-Definition gestartet. Dort können Prozesse mit einem zeitbasierten Startereignis jedoch manuell gestartet werden, zum Beispiel zu Testzwecken.

Bemerkung

Bitte beachten Sie, dass zeitbasierte Startereignisse im Bereich Öffentlicher Arbeitsbereich und Vorschau manuell gestartet werden können. Dies gilt jedoch nicht für den Bereich Veröffentlichung. Wenn jedoch ein zeitbasiertes Startereignis eines veröffentlichten Prozesses manuell ausgelöst werden soll, muss zusätzlich ein manuelles Startereignis modelliert werden.

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Öffnen Sie das entsprechende Diagramm in GBTEC Process Design. Wählen Sie in den Eigenschaften des Startereignisses unter Typisierung den Ereignistyp Zeit aus.

Der Screenshot illustriert das Attribut *Ereignistyp* eines Ereignisses. Es ist mit dem Wert "Zeit" gesetzt.

Öffnen Sie anschließend das Kontextmenü, indem Sie das Startereignis mit einem Rechtsklick auswählen. Dort finden Sie die Option Startereignis-Einstellungen.

Der Screenshot zeigt das Kontextmenü eines Startereignisses vom Typ "Zeit". Die Option "Öffne Startereignis-Einstellungen" ist hier verfügbar.

Durch Auswahl dieser Option öffnet sich ein Dialogfenster. Im Feld Starttimer Konfiguration können Sie mit einem Cron Ausdruck festlegen, wann automatisch ein neuer Vorgang gestartet wird.

Hier ist das Dialogfenster "Startereignis-Einstellungen" abgebildet.

Klicken Sie auf die Schaltfläche Speichern um die Konfiguration zu übernehmen, oder auf Abbrechen, um die Eingaben zu verwerfen.

Nach der Veröffentlichung des Diagramms werden neue Vorgänge automatisch gestartet, sobald die definierten Zeitpunkte erreicht sind. Der Vorgang wird nach dem Startzeitpunkt benannt und die Rollen werden entsprechend der standardisierten Personalbesetzung zugewiesen. Beachten Sie, dass der Vorgang keinen Eigentümer hat. Für Aufgaben ohne standardisierte Rollenbesetzung muss daher manuell ein Verantwortlicher bestimmt werden. Aufgaben ohne Verantwortlichen müssen zuerst einem Benutzer delegiert werden, bevor Sie fertiggestellt werden können.

Warnung

Wenn ein Abschnitt eines Vorgangs, der nur automatische Aufgaben enthält, zehnmal oder öfter hintereinander ausgeführt wird, wird der gesamte Vorgang aus Sicherheitsgründen automatisch gestoppt. Die betroffene Aufgabe kann manuell neu gestartet werden. Dadurch wird der Durchlaufzähler zurückgesetzt. Wenn in bestimmten Fällen mehr Durchläufe erforderlich sind, können Sie die maximale Anzahl der erlaubten Durchläufe im Process Execution Editor anpassen. Standardmäßig beträgt die maximale Anzahl der Durchläufe zehn, und mindestens ein Durchlauf muss möglich sein.

Bemerkung

Sobald das Diagramm depubliziert oder nicht mehr als ausführbar markiert ist, werden keine neuen Vorgänge mehr automatisch erstellt.

Tipp

ProcessApp Administratoren können den Vorgangsnamen in den Prozessvariablen ändern.

Cron Ausdruck:

Ein Cron Ausdruck besteht aus mehreren Feldern, die durch ein Leerzeichen getrennt sind. Die Felder definieren die Zeiteinheiten in der Reihenfolge:

<Sekunde> <Minute> <Stunde> <Tag-des-Monats> <Monat> <Tag-der-Woche>.

Jedes Feld kann einen oder mehrere erlaubte Werte und/oder Zeichen enthalten.

Feld

Wertebereich

Erlaubte Zeichen

Sekunde

0-59

, - * /

Minute

0-59

, - * /

Stunde

0-23

, - * /

Tag-des-Monats

1-31

, - * ? / L W

Monat

0-11 oder JAN-DEC

, - * /

Tag-der-Woche

1-7 oder SUN-SAT

, - * ? / L #

Hinweis

Bitte beachten Sie, dass Sie nicht gleichzeitig einen Wert für Tag-der-Woche und Tag-des-Monats angeben können.

Mit diesen Zeichen können Sie festlegen, wann Vorgänge automatisch und wiederkehrend gestartet werden. Im folgenden Abschnitt erhalten Sie eine Erklärung zu den möglichen Zeichen. Weitere Informationen finden sie auch hier.

Tipp

Unter Freeformatter.com finden Sie ein kostenloses Tool, das Cron Ausdrücke generiert.

*Der Timer ist in jeder <Zeiteinheit> gesetzt.

Beispiel: ‚*‘ für <Monat> bedeutet, dass jeden Monat (JAN-DEC) ein neuer Vorgang gestartet wird.

?Der Timer ist an jedem <Tag-der-Woche> bzw. an jedem <Tag-des-Monats> gesetzt.

Beispiel: ‚?‘ für <Tag-des-Monats> bedeutet, dass ein neuer Vorgang unabhängig vom Tag des Monats gestartet wird.

-Der Timer ist für einen Zeitraum (von-bis) definiert.

Beispiel: ‚MON-SAT‘ für <Tag-der-Woche> bedeutet, dass ein neuer Vorgang an jedem Werktag gestartet wird.

,Das Komma dient zur Aufzählung mehrerer Werte für eine Zeiteinheit. Zählen Sie die Werte dabei ohne Leerzeichen auf.

Beispiel: ‚8,15‘ für <Stunde> bedeutet, dass neue Vorgänge um 8 Uhr und um 15 Uhr gestartet werden.

/Der Timer wird mit einer eigenen Schrittweite definiert.

Beispiel: ‚1/7‘ für <Tag-des-Monats> bedeutet, dass neue Vorgänge alle 7 Tage ab dem 1. des Monats gestartet werden.

LDer letzte Wert der <Zeiteinheit>. Hier ist auch die Kombinationen mit numerischen Werten möglich, etwa ‚L-2‘ für den vorletzten Wert.

Beispiel: ‚L‘ für <Monat> bedeutet, dass ein neuer Vorgang jeweils am letzten Tag eines Monats gestartet wird, d.h. am 31.01., 28./29.02., 31.03. usw.

WDer Timer wird dynamisch für den am nächstenliegenden Werktag (MON-FRI) definiert.

Beispiel: ‚1W‘ für <Tag-des-Monats> bedeutet, dass ein neuer Vorgang jeweils am nächstliegenden Werktag zum 01. des Monats gestartet wird. Wenn der 01. ein Samstag ist, wird der Vorgang bereits am Freitag gestartet. Fällt der 01. auf einen Sonntag, wird der Vorgang am Montag gestartet.

#<n>Der Timer wird für das <n>-te Auftreten des <Tag-der-Woche> definiert, wobei für <n> eine natürliche Zahl verwendet werden kann.

Beispiel: ‚2#1‘ für <Tag-der-Woche> bedeutet, dass ein neuer Vorgang am ersten Montag jedes Monats gestartet wird.

Hinweis

Beachten Sie, dass das System in der Zeitzone des Servers arbeitet. Wenn Ihre lokale Zeitzone davon abweicht, stellen Sie sicher, dass Sie den Cron Ausdruck entsprechend anpassen.

Wenn Sie z.B. möchten, dass Vorgänge in der deutschen Zeitzone (UTC+1) automatisch um 8:00 Uhr gestartet werden und der Server in der Zeitzone UTC+0 rechnet, müssen Sie den Vorgangsstart auf 7:00 Uhr setzen.

Die folgenden Beispiele zeigen verschiedene mögliche Kombinationen. Damit können Sie wiederkehrende Startzeiten definieren.

0 30 8 ? * MON-FRI

Ein neuer Vorgang wird jeden Montag bis Freitag um 8:30 Uhr gestartet.

0 0 15 1 * ?

Ein neuer Vorgang wird jeden ersten Tag des Monats um 15:00 Uhr gestartet.

0 0 12 ? JAN,JUN 2#1

Ein neuer Vorgang startet im Januar und Juni jeweils am ersten Montag des Monats um 12:00 Uhr.

Zeitbasiertes Zwischenereignis

Sie können Ihren Vorgang für eine bestimmte Zeit unterbrechen, bevor er fortgesetzt wird. Das ist zum Beispiel nützlich, wenn Sie auf einen Zahlungseingang warten. So können Sie festlegen, dass der Vorgang erst nach 3 Tagen fortgesetzt wird.

Hinweis

Beachten Sie, dass zeitbasierte Zwischenereignisse nur in der Produktivumgebung ausgeführt werden, also nur für veröffentlichte Prozesse. In den Test- und Entwicklungsumgebungen werden Vorgänge nicht nach der unten beschriebenen ISO8601-Definition fortgesetzt.

Hinweis

Beachten Sie, dass zeitbasierte Zwischenereignisse nur für BPMN-Modellierungen verfügbar sind, nicht für EPK-Modellierungen.

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Öffnen Sie dort das gewünschte Diagramm. Wählen Sie beim Zwischenereignis unter Typisierung den Ereignistyp Zeit aus.

Der Screenshot illustriert das Attribut *Ereignistyp* eines Ereignisses. Es ist mit dem Wert "Zeit" gesetzt.

Öffnen Sie danach das Kontextmenü mit einem Rechtsklick auf das Zwischenereignis. Wählen Sie dort die Option Zwischenereignis-Einstellungen aus.

Der Screenshot zeigt das Kontextmenü eines Zwischenereignisses vom Typ "Zeit". Die Option "Öffne Zwischenereignis-Einstellungen" ist hier verfügbar.

Es öffnet sich ein Dialogfenster. Im Feld Timer-Definition können Sie festlegen, wann der Vorgang fortgesetzt wird. Geben Sie dazu die Dauer im ISO8601-Format an oder verwenden Sie eine Variable. Diese bestimmt, wann der Vorgang in GBTEC Work Orchestrator fortgesetzt wird.

Hier ist das Dialogfenster "Zwischenereignis-Einstellungen" abgebildet.

Klicken Sie auf Speichern, um die Konfiguration zu übernehmen und das Fenster zu schließen. Klicken Sie auf Abbrechen, wenn Sie die Eingaben verwerfen möchten.

Sobald das Zwischenereignis in das Prozessdiagramm eingefügt wurde, wird es im Prozessfluss angezeigt. Außerdem sehen Sie für das Ereignis das geplante Datum und die Uhrzeit.

Wenn der festgelegte Zeitpunkt erreicht ist, wird das Zwischenereignis als abgeschlossen markiert. Datum und Uhrzeit der Ausführung werden dann angezeigt.

Der Screenshot zeigt das Zwischenereignis innerhalb des Prozessflusses mit dem Datum und der Uhrzeit, zu der es ausgelöst wurde.

Wenn Sie eine Variable als Platzhalter verwenden, können Sie zwischen JUEL-Ausdruck und String-Ersetzung wählen. Die gewünschte Variante wählen Sie im Drop-Down-Menü im Bereich Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste.

Der Screenshot zeigt Ihnen die Auswahl zwischen "JUEL-Ausdruck" und "String-Ersetzung" im Drop-Down-Menü im oberen Bereich des "Process Execution Editors".

Beachten Sie, dass beide Varianten nicht gleichzeitig verwendet werden können. Diagramme, die vor Version 8.0.0 erstellt wurden, verwenden automatisch die bisherige String-Ersetzung. Bei neu erstellten Diagrammen ist die JUEL-Variante standardmäßig ausgewählt. Sie können die Einstellung jederzeit anpassen. Die Umstellung auf String-Ersetzung wird bei neuen Diagrammen jedoch nicht empfohlen.

Tipp

Weitere Informationen zu JUEL-Ausdrücken finden Sie hier.

Warnung

Beachten Sie, dass im Aufgabenformular bei einem Zwischenereignis nur der Name und die Beschreibung des Ereignisses angezeigt werden.

Nachdem das Diagramm veröffentlicht wurde, wird der Vorgang erst fortgesetzt, wenn das Zwischenereignis erreicht ist und der festgelegte Zeitpunkt eintritt. In anderen Bereichen wird der Vorgang sofort fortgesetzt. Das gilt auch, wenn der Zeitpunkt fehlt, falsch konfiguriert ist oder in der Vergangenheit liegt.

Als Benutzer mit der Benutzerrolle Vorgangseigentümer, ProcessApp Administrator oder ProcessApp Creator können Sie ein zeitbasiertes Zwischenereignis auch manuell beenden, bevor der konfigurierte Zeitpunkt erreicht ist. Für ProcessApp Creator ist diese Funktion nur in der Entwicklungs- und Testumgebung verfügbar. So können Sie den Prozess früher fortsetzen, wenn das Zeitereignis nicht mehr benötigt wird oder eine sofortige Weiterbearbeitung erforderlich ist. Klicken Sie dazu im Aufgabenformular in der rechten Seitenleiste auf die Schaltfläche Jetzt fortfahren.

Der Screenshot zeigt das ein Zwischenereignis vorzeitig manuell beendet werden kann.

Bemerkung

Wenn der konfigurierte Zeitpunkt während eines Systemstillstands erreicht wird, wird der Vorgang erst fortgesetzt, sobald die Server wieder verfügbar sind.

Hinweis

Wenn ein aktiver Vorgang abgebrochen wird, werden alle Timer angehalten.

ISO8601-Format:

Ein ISO8601-Format ist eine Zeichenkette, die die Zeitspanne eines Zeitintervalls angibt und durch das Format P(n)J(n)M(n)DT(n)H(n)M(n)S dargestellt wird. Die Großbuchstaben P, J, M, W, D, T, H, M und S sind Bezeichner für die einzelnen Datums- und Zeitelemente. Sie werden nicht ersetzt, können aber weggelassen werden.

P : Ist der Bezeichner für die Dauer (für Periode), der am Anfang der Darstellung der Dauer steht.

J : ist der Jahresbezeichner, der auf den Wert für die Anzahl der Jahre folgt.

M : ist der Monatsbezeichner, der auf den Wert für die Anzahl der Monate folgt.

W : ist der Wochenbezeichner, der auf den Wert für die Anzahl der Wochen folgt.

D : ist der Tagesbezeichner, der auf den Wert für die Anzahl der Tage folgt.

T : ist der Zeitbezeichner, der den Zeitkomponenten der Darstellung vorangestellt wird.

H : ist der Stundenbezeichner, der auf den Wert für die Anzahl der Stunden folgt.

M : ist der Minutenbezeichner, der auf den Wert für die Anzahl der Minuten folgt.

S : ist der Sekundenbezeichner, der auf den Wert für die Anzahl der Sekunden folgt.

Bemerkung

Bitte beachten Sie, dass das n durch den Wert für jedes der Datums- und Zeitelemente ersetzt wird, das auf das n folgt.

Die Felder definieren die Zeiteinheiten in dieser Reihenfolge:

<Jahr> <Monat> <Tag> <Stunde> <Minute> <Sekunde> <Millisekunde>.

Jedes Feld kann einen oder mehrere Werte sowie Zeichen enthalten.

Darstellung nach ISO 8601

Wertebereich

Jahr (J)

JJJJ, vierstellig, gekürzt zweistellig

Monat (M)

MM, 01 bis 12

Woche (W)

WW, 01 bis 53

Tag (T)

T, Tag-der-Woche, 1 bis 7

Stunde (h)

hh, 00 bis 23, 24:00:00 als Endzeit

Minute (m)

mm, 00 bis 59

Sekunde (s)

ss, 00 bis 59

Dezimaler Bruchteil (f)

Bruchteile von Sekunden, beliebige Genauigkeit

Beispiele:

PT15S - 15 Sekunden

P14DT1H30M - 14 Tage, 1 Stunde und 30 Minuten

P3Y6M4DT12H30M5S - 3 Jahre, 6 Monate, 4 Tage, 12 Stunden, 30 Minuten und 5 Sekunden

Untergeordnete Prozesse

Wie kann ich aus einem Prozess untergeordnete Prozesse starten?

Um von einem Vorgang aus weitere Prozessvorgänge aufzurufen, können Aufrufaktivitäten verwendet werden. Auf diese Weise können beliebig viele untergeordnete Vorgänge gestartet werden. Soll ein Prozess ebenfalls in GBTEC Work Orchestrator ausgeführt werden, muss dieser als ausführbar gekennzeichnet sein. Ist der aufzurufende Prozess nicht ausführbar, wird die Aufgabe wie eine normale Aufgabe angezeigt und muss manuell erledigt werden.

Wie Sie konkret mit Aufrufaktivitäten arbeiten können, erfahren Sie hier.

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Modellieren Sie in Ihrem Diagramm in GBTEC Process Design eine Aktivität mit dem Prozesstyp Aufrufaktivität. Das Attribut finden Sie in der Attributgruppe Typisierung.

Der Screenshot zeigt das Attribut "Prozesstyp" einer Aktivität mit der gewählten Option "Aufrufaktivität".

Öffnen Sie mit der rechten Maustaste das Kontextmenü und wählen Sie die Option Öffne Aufrufaktivität Einstellungen.

Dieser Screenshot zeigt die Einstellungen, die Sie beim Einrichten einer Aufrufaktivität vornehmen können.

Hier können Sie einstellen, ob Ihre Aufrufaktivität synchron oder asynchron ablaufen soll.

  • Synchrone Aufrufaktivitäten werden direkt während der Bearbeitung Ihres Vorgangs ausgeführt und unterbrechen diesen. Die Prozessvariablen werden an den aufgerufenen Vorgang übergeben. Nach Abschluss des aufgerufenen Vorgangs werden die Prozessvariablen wieder an den Hauptvorgang übergeben. Wenn ein Benutzer mit der Benutzerrolle ProcessApp Administrator die synchrone Aufrufaktivität manuell beendet, bleibt der untergeordnete Vorgang unverändert und kann weiter bearbeitet werden.

  • Asynchrone Aufrufaktivitäten werden ebenfalls direkt gestartet, unterbrechen jedoch den Hauptvorgang nicht. Die Prozessvariablen des Hauptvorganges werden ebenfalls an den aufgerufenen Vorgang übergeben, werden nach Abschluss aber nicht an den Hauptvorgang zurückgegeben. Außerdem kann am Hauptvorgang weitergearbeitet werden, während der untergeordnete Vorgang noch läuft. Wird der Hauptvorgang archiviert, bleibt der untergeordnete Vorgang unverändert und kann weiter bearbeitet werden.

Verknüpfen Sie nun den aufzurufenden Prozess mit der Aktivität, indem Sie ihn in das Attribut Subprozess eintragen. Hier wird für die Aufrufaktivität „Sonderanfertigung erstellen“ eines Bestellvorgangs der untergeordnete Prozess „Sonderanfertigung“ verwendet. Das Diagramm „Sonderanfertigung“ ist ein ausführbares BPMN-Diagramm.

Der Screenshot zeigt die Detailsicht und das Attribut "Subprozess" einer Aufrufaktivität.

Wird in GBTEC Work Orchestrator ein Vorgang des Bestellprozesses ausgeführt, wird beim Start der Aufgabe der Aufrufaktivität automatisch ein neuer Vorgang des untergeordneten Prozesses gestartet. Dieser wird nach der Aufrufaktivität mit dem Zusatz „- Hauptvorgangsname“ benannt. In diesem Beispiel wurde im Hauptvorgang „Bestellung 2503“ mit der Aufrufaktivität „Sonderanfertigung erstellen“ ein Vorgang des Prozesses „Sonderanfertigung“ erstellt.

Hauptvorgang „Bestellung 2503“:

Hier ist der Hauptvorgang mit der Aufrufaktivität dargestellt.

Untergeordneter Vorgang (neuer Vorgang des Prozesses „Sonderanfertigung“):

Hier ist der untergeordnete Vorgang der Aufrufaktivität dargestellt.

Hier ist Max Mustermann für die Aufgaben verantwortlich, da er standardmäßig der Rolle zugewiesen ist. Das System wird automatisch als Ersteller der untergeordneten Vorgänge festgelegt.

Wie kann ich Eingabe- und Ausgabedokumente für einen untergeordneten Prozess verwenden?

Sobald ein Eingabedokument für eine Aufrufaktivität modelliert wurde, steht das hochgeladene Dokument im untergeordneten Prozess zur Verwendung bereit. Wenn der Identifizierer dieses Dokuments mit dem Identifizierer des Eingabedokuments der entsprechenden Aufrufaktivität im Hauptvorgang übereinstimmt, wird das Dokument im untergeordneten Prozess verfügbar gemacht.

Hinweis

Sie können auch mehrere Eingabedokumente modellieren. Diese sind dann alle im untergeordneten Prozess verfügbar. In jedem Vorgang wird dabei das zuletzt hochgeladene Dokument als Eingabedokument verwendet.

Der untergeordnete Prozess kann die Eingabe überschreiben oder unverändert lassen. Das gilt sowohl innerhalb desselben Vorgangs als auch bei Eingaben aus einem Hauptvorgang. Es gilt auch dann, wenn parallele Pfade im Prozess teils zum Überschreiben und teils zum Nicht-Überschreiben führen.

Sie können in einer Aufrufaktivität auch ein oder mehrere Ausgabedokumente modellieren, um eine Datei aus dem untergeordneten Prozess an den Hauptprozess zu übergeben. Erstellt der untergeordnete Prozess eine Datei-Variable, deren Identifizierer mit dem Identifizierer eines Ausgabedokuments der Aufrufaktivität übereinstimmt, wird diese Datei nach Abschluss des untergeordneten Vorgangs in den Hauptvorgang übernommen. Name, Größe und Dateityp der Datei bleiben dabei erhalten. Die Datei steht danach für weitere Aufgaben im Hauptprozess zur Verfügung.

Existiert im Hauptvorgang bereits eine Datei-Variable mit demselben Identifizierer, wird diese durch die Datei aus dem untergeordneten Prozess ersetzt. Das entspricht dem manuellen Hochladen einer neuen Datei über ein Formularfeld vom Typ Datei.

Stimmt der Identifizierer der im untergeordneten Prozess erzeugten Datei mit keinem der modellierten Ausgabedokumente überein, wird die Datei keinem Ausgabedokument der Aufrufaktivität zugeordnet.

Hinweis

Sie können auch mehrere Ausgabedokumente mit unterschiedlichen Identifizierern modellieren. Jede passende Datei wird dann dem entsprechenden Ausgabedokument zugeordnet. Die jeweiligen Metadaten bleiben dabei erhalten.

Bemerkung

Bitte beachten Sie, dass unabhängig von der Modellierung von Ausgabedokumenten immer alle Prozessvariablen des untergeordneten Vorgangs an den Hauptvorgang übergeben werden. Hat eine Prozessvariable aus dem untergeordneten Vorgang denselben Identifizierer wie eine bereits vorhandene Prozessvariable im Hauptvorgang, wird diese im Hauptvorgang überschrieben.

Wie kann ich einen Korrelationsschlüssel für ein auslösendes Ereignis definieren?

In einem Prozess, der durch ein auslösendes Ereignis gestartet wird, kann über das Details-Menü des Editors auf bestimmte Konfigurationen zugegriffen werden. Hier kann ein JUEL-Ausdruck als Korrelationsschlüssel definiert werden.

Der Screenshot zeigt die Detailsansicht einer Aktivität mit Formular Editor.

Nachdem das vordefinierte auslösende Ereignis eingetreten ist, wird automatisch eine Nachricht generiert. Diese Nachricht enthält eine vordefinierte Ereignis-ID sowie den vordefinierten Korrelationsschlüssel. Gleichzeitig wird durch das Eintreten des Ereignisses der zugehörige Prozessschritt ausgelöst und als abgeschlossen markiert.

Bemerkung

Der definierte Korrelationsschlüssel steht im Kontext der Prozessinstanz zur Verfügung.

Tipp

Korrelationsschlüssel können auch innerhalb von BPMN-Nachrichtenereignissen verwendet werden. Beispiele für Korrelationsschlüssel sind order.orderId und user.identity.email. Dadurch wird sichergestellt, dass eine eingehende Nachricht nicht nur anhand des Nachrichtennamens, sondern auch anhand spezifischer Geschäftsdaten abgeglichen wird, die die zugehörige Prozessinstanz identifizieren. Trifft eine Nachricht mit einem übereinstimmenden Korrelationsschlüssel ein, wird das Zwischenereignis im Prozess ausgelöst, die wartende Prozessinstanz fortgesetzt und die nachfolgende Aufgabe automatisch aktiviert. Beispiel: Wenn ein Prozess an einem Zwischenereignis wartet, das mit order.orderId korreliert ist, und eine Nachricht mit derselben Bestell-ID eintrifft, wird die wartende Prozessinstanz an dieser Stelle fortgesetzt.

Wie kann ich das Wiederholungslimit für Fragmente im Process Execution Editor konfigurieren?

Im Process Execution Editor haben Sie die Möglichkeit, Fragmentwiederholungen in Prozessen einzustellen. Hierzu müssen Sie sich im Bereich Öffentlicher Arbeitsbereich befinden und mindestens die Benutzerrolle Author besitzen. Wenn Sie Fragmente in einem Prozessmodell konfigurieren, können diese mehrfach ausgeführt werden. Um Endlosschleifen oder unbeabsichtigte Dauerausführungen zu vermeiden, lässt sich in diesem Editor ein maximales Ausführungslimit pro Prozessinstanz festlegen. Wird dieser Wert überschritten, pausiert der Prozess automatisch und verhindert so fehlerhafte oder unkontrollierte Wiederholungen.

Klicken Sie dazu in GBTEC Process Design in der linken Menüleiste auf den Menüeintrag Diagramme und wählen Sie das gewünschte Diagramm aus. Checken Sie das Diagramm aus und navigieren Sie in der rechten Seitenleiste zur Registerkarte Optionen. Öffnen Sie anschließend die Option Process Execution Editor. Dort finden Sie die Konfigurationsoption Fragmentsausführungsgrenze pro Vorgang.

Der Screenshot zeigt die Option zum Festlegen einer „Fragmentsausführungsgrenze pro Vorgang“ im Process Execution Editor.

Das Eingabefeld Fragmentsausführungsgrenze pro Vorgang ist standardmäßig mit dem Wert 10 vorbelegt. Zusätzlich wird ein Hinweis angezeigt, dass der Prozess bei einer automatischen Ausführung angehalten wird, sobald die festgelegte Grenze überschritten wird, um Endlosschleifen zu vermeiden. Sie können diesen Wert anpassen, um festzulegen, wie oft ein Fragment pro Vorgang ausgeführt werden darf.

Der Screenshot zeigt die Option, die „Fragmentsausführungsgrenze pro Vorgang“ zu speichern.

Nach dem Eintragen und Speichern eines gültigen Werts wird die Einstellung in der Prozessdefinition gespeichert. Bei der späteren Ausführung des Prozesses wird das von Ihnen definierte Limit zur Prüfung auf zu viele Wiederholungen verwendet und ersetzt damit den Standardwert.

Bemerkung

Bitte beachten Sie, dass nur positive ganze Zahlen größer als 0 zulässig für die Eingabe sind. Geben Sie beispielsweise 0, -5, eine Dezimalzahl oder einen Text ein, erscheint eine Fehlermeldung, die Sie darauf hinweist, Ihre Eingabe zu korrigieren. In diesem Fall kann die Konfiguration erst gespeichert werden, nachdem der Fehler behoben wurde.

Wie kann ich Aktivitäten mit einem (dynamischen) Fälligkeitsdatum modellieren?

Sie können Ihren Aktivitäten ein dynamisches Fälligkeitsdatum zuweisen. Dies bedeutet, dass eine Aktivität nach einer bestimmten Anzahl von Tagen oder zu einem bestimmten Datum erledigt sein muss. Wie Sie mit diesem Attribut in GBTEC Work Orchestrator arbeiten können, erfahren Sie hier.

Um dieses Attribut für eine Aktivität zu pflegen, öffnen Sie die Registerkarte Optionen der jeweiligen Aktivität und wechseln Sie zur Option Process Execution Editor. Dort können Sie das Fälligkeitsdatum des Elements festlegen.

Der Screenshot zeigt die Attributsgruppe Automatisierung, in der Sie ein dynamisches Fälligkeitsdatum definieren können.

Hier können Sie eintragen, wie viele Tage nach dem Start der Aufgabe oder zu welchem Datum die Aufgabe fällig ist. Bei der Ausführung in GBTEC Work Orchestrator wird automatisch berechnet, an welchem Datum die jeweilige Aktivität fällig ist.

Bemerkung

Wenn Sie keine Eingabe machen, wird das Fälligkeitsdatum auf den gleichen Tag wie das Prozess-Fälligkeitsdatum gesetzt.

Tipp

Deklarieren Sie zuvor mindestens ein Datumsfeld im Formular-Editor, um mit diesem Wert auch ein Fälligkeitsdatum zu ermitteln.

Bemerkung

Sie haben außerdem die Möglichkeit, JUEL-Ausdrücke (Java Unified Expression Language) zur Definition von dynamischen Fälligkeitsdaten zu verwenden. Mit diesen Ausdrücken können Sie nicht nur einfache Variablenwerte abfragen, sondern auch gezielt auf einzelne Werte innerhalb komplexer Variablen zugreifen. Weitere Informationen zu JUEL-Ausdrücken finden Sie hier.

Es folgen einige Beispiele, wie das Fälligkeitsdatum aus mindestens einem Datumsfeld ermittelt werden kann. Dabei werden im Formular-Editor zwei Datenfelder erstellt und mit den IDs „DueDate1“ und „DueDate2“ deklariert. DueDate1 wird in diesen Beispielen immer auf den 28.03.2023 und DueDate2 immer auf den 05.04.2023 gesetzt.

Der Screenshot zeigt den Formular Editor mit der deklarierten Datumsfeld-ID.

Der Screenshot zeigt die gesetzten Daten für die anstehenden Beispiele.

Hinweis

Sie können ebenfalls Daten im ISO 8601 Format mit dem Formularfeld Text und Zeitstempel in Millisekunden mit dem Formularfeld Nummer mit den folgenden Befehlen definieren.

Um das Fälligkeitsdatum um X Tage/Wochen/Monate/Jahre zu verschieben, können Sie diese Befehle verwenden:

nameID.plusDays(X).plusWeeks(X).plusMonths(X).plusYears(X)

nameID.minusDays(X).minusWeeks(X).minusMonths(X).minusYears(X)
  • nameID steht hier für Ihre deklarierte Datumsfeld-ID.

  • plusDays(X) / minusDays(X) verschiebt das Fälligkeitsdatum um X Tage nach hinten bzw. nach vorne.

  • plusWeeks(X) / minusWeeks(X) verschiebt das Fälligkeitsdatum um X Wochen nach hinten bzw. nach vorne.

  • plusMonths(X) / minusMonths(X) verschiebt das Fälligkeitsdatum um X Monate nach hinten bzw. nach vorne.

  • plusYears(X) / minusYears(X) verschiebt das Fälligkeitsdatum um X Jahre nach hinten bzw. nach vorne.

Beispiele:

DueDate1.plusDays(4)

ergibt die Ausgabe 01.04.2023.

DueDate1.plusWeeks(2).minusDays(1)

ergibt die Ausgabe 10.04.2023.

DueDate2.plusYears(1).minusMonths(2).plusWeeks(3)

ergibt die Ausgabe 26.02.2024.

DueDate2.minusWeeks(3).minusYears(1).plusDays(10).plusMonths(6)

ergibt die Ausgabe 25.09.2022.

Um das Fälligkeitsdatum auf den ersten Tag des Monats zu setzen, verwenden Sie den Befehl:

.withDayOfMonth(X)

Setzen Sie X auf 1, um den ersten Tag des Monats zu erhalten.

Beispiele:

DueDate1.withDayOfMonth(1)

ergibt die Ausgabe 01.03.2023.

DueDate2.plusYears(2).withDayOfMonth(1)

ergibt die Ausgabe 01.04.2025.

DueDate2.plusMonths(3).minusYears(1).withDayOfMonth(1)

ergibt die Ausgabe 01.07.2022.

Alternativ können Sie für X eine beliebige Zahl zwischen 1-31 wählen.

DueDate1.plusYears(1).minusMonths(2).withDayOfMonth(15)

ergibt die Ausgabe 15.01.2024.

Hinweis

Vermeiden Sie Zahlen über 28, da nicht jeder Monat über die gleiche Anzahl an Tagen verfügt. Für Zahlen über 28 gehen Sie wie im folgenden Beispiel vor.

Um das Fälligkeitsdatum auf den letzten Tag des Monats zu setzen, verwenden Sie den Befehl:

nameID.plusMonths(X).withDayOfMonth(1).minusDays(X)

Dabei ist nameID die ID Ihres deklarierten Datumsfelds.

Beispiele:

DueDate1.plusMonths(1).withDayOfMonth(1).minusDays(1)

ergibt die Ausgabe 31.03.2023.

DueDate1.plusMonths(2).withDayOfMonth(1).minusDays(1)

ergibt die Ausgabe 30.04.2023.

DueDate2.plusMonths(1).withDayOfMonth(1).minusDays(1).plusYears(3)

ergibt die Ausgabe 30.04.2026.

DueDate2.plusMonths(1).withDayOfMonth(1).minusDays(2)

ergibt die Ausgabe 29.04.2023.

Sie können außerdem eine if-else-then-Anweisung verwenden, um das Fälligkeitsdatum zu bestimmen, wenn die Ausgabe durch einen Boolean-Wert bestimmt wird. Dazu benötigen Sie die Operatoren ? und : sowie eine TRUE- und eine FALSE-Bedingung. Außerdem müssen mindestens zwei IDS für Datenfelder deklariert werden.

Um zwei Daten miteinander zu vergleichen, verwenden Sie den Befehl:

nameID_1.equals(nameID_2) ? X : Y
  • equals() ist der Befehl, um zwei Daten miteinander zu vergleichen.

  • nameID_1 / nameID_2 sind Ihre deklarierten Datenfeld-IDs.

  • ? beendet die Anforderung, gefolgt von den TRUE und FALSE Bedingungen.

  • X wird ausgegeben, wenn die Bedingung TRUE ist.

  • Y wird ausgegeben, wenn die Bedingung FALSE ist.

  • : wird eingefügt, um die TRUE-Bedingung von der FALSE-Bedingung zu trennen.

Beispiele:

DueDate1.equals(DueDate2) ? 5 : DueDate1.plusWeeks(1)

ergibt die Ausgabe 04.04.2023, da die Bedingung FALSE ist.

DueDate2.equals(DueDate1) ? DueDate2.plusWeeks(2) : DueDate2.minusDays(3).plusMonths(1)

ergibt die Ausgabe 02.05.2023, da die Bedingung FALSE ist.

DueDate1.equals(DueDate2) ? 5 : 10

rechnet 10 Tage auf das Datum, an dem die Aufgabe erstellt wurde, da die Bedingung FALSE ist. Entspricht dieses Datum z.B. dem 01.04.2023, so ergibt die Ausgabe 11.04.2023.

Um zu überprüfen, ob ein Datum vor oder nach einem anderen Datum liegt, können die folgenden Befehle verwendet werden:

nameID_1.isBefore(nameID_2) ? X : Y

nameID_1.isAfter(nameID_2) ? X : Y
  • isBefore() prüft, ob das Datum (nameID_1) vor dem anderen Datum (nameID_2) liegt.

  • isAfter() prüft, ob das Datum (nameID_1) nach dem anderen Datum (nameID_2) liegt.

Beispiele:

DueDate1.isBefore(DueDate2) ? DueDate1.plusMonths(1).withDayOfMonth(15) : DueDate2

ergibt die Ausgabe 15.04.2023, da die Bedingung TRUE ist.

DueDate2.isBefore(DueDate1) ? DueDate2.minusDays(5) : DueDate2.plusWeeks(2).plusMonths(1)

ergibt die Ausgabe 19.05.2023, da die Bedingung FALSE ist.

DueDate1.isAfter(DueDate2) ? 10 : DueDate2.minusMonths(1).withDayOfMonth(20)

ergibt die Ausgabe 20.03.2023, da die Bedingung FALSE ist.

DueDate2.isAfter(DueDate1) ? 20 : DueDate2.plusYears(1)

rechnet 20 Tage auf das Datum, an dem die Aufgabe erstellt wurde, da die Bedingung TRUE ist. Entspricht dieses Datum z.B. dem 01.04.2023, so ergibt die Ausgabe 21.04.2023.

Hinweis

Wenn der Ausgabewert einer TRUE- oder FALSE-Bedingung eine numerische Zahl ist, wird diese immer zu dem Datum addiert, an dem die Aufgabe erstellt wurde.

Wie kann ich modellierte Aufgaben im Katalog bearbeiten?

Als Benutzer mit der Benutzerrolle ProcessApp Creator haben Sie die Möglichkeit, die jeweiligen Editoren der modellierten Aufgaben im Katalog in GBTEC Process Design zu öffnen und zu bearbeiten. Dazu zählen die Editoren von Benutzeraufgaben, Skriptaufgaben, Serviceaufgaben mit REST Abfrage sowie Sendeaufgaben. Wenn Sie sich aktuell in GBTEC Work Orchestrator, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Gehen Sie über die linke Menüleiste zum Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auszuchecken. Öffnen Sie ein Diagramm, checken Sie es aus und klicken Sie auf eine freie Stelle der Leinwand. Wählen Sie in der Registerkarte Details in der rechten Seitenleiste die Attributgruppe Automatisierung aus und markieren Sie den Prozess als ausführbaren Prozess. Modellieren Sie bei Bedarf Ihren Prozess und klicken Sie anschließend auf eine Aktivität. Wählen Sie in der rechten Seitenleiste in der Attributgruppe Typisierung im Feld Aufgabentyp einen passenden Aufgabentyp aus. Speichern Sie Ihr Diagramm und checken Sie es über die Schaltfläche Einchecken wieder ein.

Wenn für diese Aktivität noch kein Katalogeintrag vorliegt, klicken Sie mit einem Rechtsklick auf die Aktivität während das Diagramm eingecheckt ist und wählen Sie die Option Katalogeintrag vorschlagen.

Der Screenshot zeigt die Option "Katalogeintrag vorschlagen" beim Rechtsklick auf eine Aktivität im eingecheckten Diagramm.

Nachdem der Katalogeintrag vorgeschlagen wurde, können Sie erneut mit der rechten Maustaste auf die Aktivität im eingecheckten Diagramm klicken und die Option Im Katalog anzeigen wählen. Sie werden daraufhin zur Detailansicht der ausgewählten Aktivität im Katalog weitergeleitet. Alternativ können Sie den Katalog über den Menüeintrag Katalog in der linken Menüleiste öffnen.

Sobald Sie sich in der Detailansicht der Aktivität befinden, erscheint in der rechten Seitenleiste unter der Registerkarte Optionen eine zusätzliche Option, mit der Sie den Editor des gewählten Aufgabentyps öffnen können.

Der Screenshot zeigt die Option zum Öffnen eines Editors in der Detailsansicht einer Aktivität im Katalog.

Die Editor-Option wird sowohl für Katalogvorschläge als auch für angenommene Katalogeinträge angezeigt. Wenn Sie die Option anklicken, öffnet sich der jeweilige Editor des Aufgabentyps. Dieser ist mit dem Editor im Diagramm synchronisiert und kann bei Bedarf angepasst werden. So können Sie den Editor zentral im Katalog über mehrere Diagramme hinweg pflegen, ohne die jeweiligen Diagramme auschecken zu müssen.

Hinweis

Bitte beachten Sie, dass die Option zum Öffnen eines Editors nur angezeigt wird, wenn Sie sich im Bereich Öffentlicher Arbeitsbereich befinden. Stellen Sie daher sicher, dass Sie über eine entsprechende Rolle in GBTEC Process Design verfügen.

Entwicklungs- und Testumgebung

GBTEC Work Orchestrator stellt neben der produktiven Umgebung zur Ausführung von Prozessen zwei weitere Umgebungen zur Verfügung, in denen Sie Prozesse bereits während der Modellierung des Diagramms in GBTEC Process Design schon überprüfen und testen können.

Ein Prozess in der Entwicklungsumgebung (auch Studio genannt) entspricht der Version des zugehörigen Diagramms im öffentlichen Arbeitsbereich. Wenn Sie ein Diagramm in GBTEC Process Design als ausführbaren Prozess modelliert haben, wird es nach dem Einchecken in der Entwicklungsumgebung sichtbar.

Sobald dieses Diagramm in der Vorschau von GBTEC Process Design verfügbar ist, erscheint der definierte Prozess auch in der Testumgebung.

Für die Entwicklungs- und Testumgebung gilt: Wenn es in der jeweiligen Umgebung bereits eine vorherige Version gab, so wird diese ersetzt, sobald das zugehörige Diagramm im öffentlichen Arbeitsbereich bzw. in der Vorschau geändert wird. Dabei werden alle bereits existierenden Vorgänge zu dem Prozess in der Umgebung gelöscht. Auf diese Weise können Autoren nach der Modellierung des Diagramms direkt die Änderungen am Prozess direkt sehen und überprüfen.

Welche Umgebungen gibt es?

Die Ausführung der erstellten Prozesse erfolgt in der Produktionsumgebung von GBTEC Work Orchestrator. Diese ist für alle in GBTEC Process Design eingetragenen Benutzer zugänglich. Hier werden die Prozesse angezeigt und verwendet, deren zugehörige Diagramme in GBTEC Process Design in der Veröffentlichung zur Verfügung stehen.

Neben der Produktivumgebung gibt es zwei weitere Umgebungen, die Entwicklungs- und die Testumgebung. Sie bieten die Möglichkeit, Prozesse vor der Veröffentlichung zu testen und sind für Benutzer mit mindestens der Rolle ProcessApp Creator zugänglich. Weitere Informationen finden Sie im Kapitel „Entwicklungs- und Testumgebung“.

Wie kann ich die Umgebung wechseln?

Die Produktivumgebung erkennen Sie an dem Schlüsselwort „app“ in Ihrer URL:

https://XXX/process-execution/app/...

Sie können zur Entwicklungs- oder Testumgebung wechseln, indem Sie die URL ändern. Fügen Sie nach .../process-execution/ die Schlüsselwörter „studio“ bzw. „test“ ein:

  • Über https://XXX/process-execution/studio gelangen Sie in die Entwicklungsumgebung/das Studio.

  • Über https://XXX/process-execution/test gelangen Sie in die Testumgebung.

Die folgende Tabelle gibt einen kurzen Überblick über die Umgebungen:

Entwicklungsumgebung

Testumgebung

Produktivumgebung

Diagrammversion

Öffentlicher Arbeitsbereich

Vorschau

Veröffentlichung

URL Schlüsselwort

studio

test

app

Wie kann ich einen Prozess während der Modellierung testen?

Wenn Sie einen Prozess erstellen, indem Sie ein Diagramm in GBTEC Process Design modellieren, können Sie diesen direkt testen. Das Diagramm muss lediglich als ausführbarer Prozess gekennzeichnet sein.

Sobald Sie das Diagramm einchecken, erscheint die Schaltfläche ProcessApp testen.

Hier ist die "Start" Schaltfläche für die ProcessApp im Öffentlichen Arbeitsbereich dargestellt.

Wenn Sie diese Schaltfläche auswählen, werden Sie in einem neuen Browser-Tab zum Studio von GBTEC Work Orchestrator weitergeleitet, wo automatisch ein neuer Vorgang für den definierten Prozess angelegt wird. Der Vorgangsname wird vom System mit dem Prozessnamen und dem aktuellen Zeitpunkt gepflegt. Zusätzlich werden Sie für alle Rollen (unabhängig von standardisierter Rollenzuweisung) eingetragen. Dadurch ist es möglich, den aktuell modellierten Prozessfluss ohne weitere Konfiguration zu testen.

Wie kann ich einen Prozess vor der Veröffentlichung testen?

Wenn ein neuer Prozess, der in GBTEC Process Design modelliert wurde, kurz vor der Veröffentlichung steht, können Sie die endgültige Version in der Vorschau testen. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Öffnen Sie über die linke Menüleiste den Menüeintrag Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bereits vorhandenes Diagramm öffnen. Wählen Sie den Arbeitsbereich des Diagramms aus und wechseln Sie zur Registerkarte Details. Öffnen Sie die Attributgruppe Automatisierung und markieren Sie Ihren Prozess als ausführbaren Prozess. Checken Sie anschließend das Diagramm aus. In der Diagrammansicht steht Ihnen danach die Schaltfläche ProcessApp testen zur Verfügung.

Hier ist die "Start" Schaltfläche für die ProcessApp in der Vorschau dargestellt.

Wenn Sie diese Schaltfläche auswählen, werden Sie in einem neuen Browser-Tab in die Testumgebung von GBTEC Work Orchestrator weitergeleitet. Dort öffnet sich ein Dialogfenster, in dem Sie einen neuen Vorgang für den definierten Prozess anlegen können. Um Ihren Testprozess zu konfigurieren, gehen Sie wie bei der Erstellung eines Vorgangs in der Produktivumgebung vor.

Wie kann ich die standardisierte Rollenzuweisung in der Prozessinstanziierung definieren?

In GBTEC Process Design haben Sie die Möglichkeit, Personen oder Organisationseinheiten Rollen zuzuweisen, damit diese bei der Prozessinstanziierung in GBTEC Work Orchestrator automatisiert übernommen werden. Wenn im Voraus bekannt ist, dass für alle Vorgänge eines Prozesses fast immer dieselben Benutzer oder Organisationseinheiten verantwortlich sind, können Sie so die Prozessinstanziierung für diesen bestimmten Prozess beschleunigen.

Um diese Funktion zu nutzen, navigieren Sie in GBTEC Process Design im gewünschten Diagramm zu der entsprechende Rolle. Tragen Sie dort den Benutzer oder die Organisationseinheit in das Attribut Personalbesetzung ein. Sie finden das Attribut in der Attributgruppe Automatisierung.

Hier ist das Attribut "Personalbesetzung" eines Diagrams aus GBTEC Process Design gezeigt.

Hier können sowohl einzelne Benutzer als auch Benutzergruppen oder Organisationseinheiten eingetragen werden. Anschließend muss das Diagramm erneut veröffentlicht werden, um die Änderungen für den Prozess der Produktivumgebung in GBTEC Work Orchestrator zu übernehmen. Nach dem Publizieren der neuen Version des Diagramms, wird der Benutzer bzw. die Organisationseinheit standardmäßig der Rolle als Verantwortlicher im Instanziierungsprozess zugewiesen.

Tipp

Bei Bedarf kann die Rollenzuweisung während der Prozessinstanziierung noch geändert werden.

Bemerkung

Wenn bei der Vorgangserstellung für eine Rolle kein Benutzer bzw. keine Benutzergruppe festgelegt wurde, ist der Vorgangsersteller für das Ausführen der Aufgabe verantwortlich, sobald der Vorgang gestartet wurde.

Wie kann ich eine beschränkte Vorgangserstellung festlegen?

In GBTEC Process Design haben Sie die Möglichkeit, für Diagramme, die in GBTEC Work Orchestrator ausgeführt werden, eine beschränkte Vorgangserstellung zu definieren. Auf diese Weise können Sie individuell festlegen, welche Benutzer Vorgänge für die verschiedenen Prozesse anlegen können. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Um eine solche Beschränkung zu definieren, wechseln Sie in der rechten Seitenleiste zu den Details des entsprechenden Diagramms. Sie finden das Attribut Beschränkte Vorgangserstellung unter der Attributgruppe Automatisierung.

Der Screenshot zeigt Ihnen das Attribut "beschränkte Vorgangserstellung" in den Details eines Diagramms.

Hier können Sie analog zur Zugriffsbeschränkung für Diagrammen und Repositories die Namen einzelner Benutzer oder ganzer Benutzergruppen eingeben. Sobald Sie die ersten Zeichen in das Eingabefeld eingeben, erscheint eine Vorschlagsliste, aus der Sie den gewünschten Eintrag auswählen können.

Hier wird die Vorschlagsliste nach Eingabe einiger Zeichen in das Attribut "beschränkte Vorgangserstellung" gezeigt.

Sobald eine beschränkte Vorgangserstellung definiert wurde und das Diagramm alle Voraussetzungen erfüllt, um in GBTEC Work Orchestrator angezeigt zu werden, gilt Folgendes:

Alle Benutzer, die Teil der beschränkten Vorgangserstellung sind, können wie gewohnt Vorgänge für den betreffenden Prozess anlegen. Dasselbe gilt für Benutzer, die Teil von Benutzergruppen sind, die in der beschränkten Vorgangserstellung angegeben wurden.

Alle anderen Benutzer sehen den betreffenden Prozess im Bereich ProcessApps, können jedoch keine neuen Vorgänge für diesen Prozess anlegen. Diesen Benutzern wird die Funktion Neuen Vorgang erstellen weder im Menü der ProcessApp noch in der Vorgangsliste des Prozesses angezeigt.

Wie kann ich eine Aufbewahrungsfrist für die archivierten Vorgänge meines Prozesses festlegen?

Bei der Modellierung eines Prozesses in GBTEC Process Design können Sie eine Aufbewahrungsfrist für die archivierten Vorgänge des Prozesses festlegen. Nach jeder Archivierung verbleibt jeder Vorgang bis zum Ablauf der Aufbewahrungsfrist im Archiv und wird dann endgültig gelöscht. Pflegen Sie dazu das Attribut Aufbewahrungsfrist mit der gewünschten Zeitspanne in Tagen. Geben Sie z.B. „365“ ein, um die Vorgänge des Prozesses für 1 Jahr im Archiv zu aufzubewahren. Sie finden das Attribut in der Attributgruppe Automatisierung.

Der Screenshot zeigt die Attributgruppe "Automatisierung", wo das Attribut "Aufbewahrungsfrist" gesetzt werden kann.

Wenn die Aufbewahrungsfrist für einen Vorgang abläuft, während Sie sich in der Liste der archivierten Vorgänge befinden, wird der Vorgang aus der Liste entfernt und Sie erhalten eine Benachrichtigung über diesen Automatismus. Wenn Sie zum Zeitpunkt des Ablaufs der Aufbewahrungsfrist den Prozessfluss des archivierten Vorgangs betrachten, werden Sie ebenfalls darüber informiert und das System navigiert zurück zur Vorgangsliste des zugehörigen Prozesses.

Warnung

Jeder archivierte Vorgang wird nach Ablauf der Aufbewahrungsfrist unwiderruflich gelöscht. Die Frist beginnt ab dem Zeitpunkt, an dem der jeweilige Vorgang in das Archiv verschoben wurde.

Wie kann ich einen Prozess einer ProcessApp Collection hinzufügen?

Die Zuordnung eines Prozesses zu einer ProcessApp Collection erfolgt in GBTEC Process Design. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Öffnen Sie GBTEC Process Design und gehen Sie über die linke Menüleiste zum Menüpunkt Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Öffnen Sie anschließend in der Registerkarte Details in der rechten Seitenleiste die Attributgruppe Automatisierung. Dort finden Sie das Attribut ProcessApp Collections.

Dieser Screenshot zeigt das Attribut *ProcessApp Collection* ohne Ausprägung.

Hier können Sie eine oder mehrere ProcessApp Collection IDs eingeben, um den Prozess den gewünschten ProcessApp Collections zuzuordnen. So legen Sie fest, in welchen ProcessApps der Prozess später angezeigt wird.

Dieser Screenshot zeigt das Attribut *ProcessApp Collection* mit den Ausprägungen *Vertrieb* und *Kundenkontakt*.

Wie modelliere ich den Prozessfluss mit Gateways?

In der Regel verläuft ein Prozess nicht immer linear nach einem festen Ablauf. Abhängig von den getroffenen Entscheidungen kann sich der Pfad aufteilen, so dass es je nach Umständen unterschiedliche Prozessabläufe entstehen oder teilweise auch parallel gearbeitet wird. Dies kann in GBTEC Process Design mit Hilfe von Sequenzflüssen und Gateways modelliert werden. Gateways sind dann in einem konkreten Vorgang in GBTEC Work Orchestrator Entscheidungen oder starten (und führen sie wieder zusammen) parallele Prozessflüsse.

Es gibt die folgenden drei Arten von Gateways:

  • Exklusives Gateway: An diesem Gateway wird genau einer der nachfolgenden Sequenzflüsse verfolgt. Die Entscheidung, welcher davon in einem konkreten Vorgang gewählt wird, kann automatisiert werden.

  • Inklusives Gateway: An diesem Gateway können einer oder mehrere der nachfolgenden Sequenzflüsse ausgeführt werden.

  • Paralleles Gateway: Bei einem parallelen Gateway werden alle nachfolgenden Sequenzflüsse ausgeführt.

Beachten Sie, dass es möglich ist, mehrere Sequenzflüsse an einer Aktivität zu modellieren, ohne Gateways zu verwenden.

Hier ist ein Prozessfluss modelliert, wo sich der Pfad direkt an einer Aktivität teilt.

In diesem Fall müssen Sie Ausdrücke für eine automatische Entscheidung über den Ablauf des Prozessflusses definieren. Wenn Sie keine Ausdrücke definieren, bleibt der Prozess an dieser Stelle stehen. Wenn Sie ohne Ausdrücke und automatische Entscheidungen arbeiten möchten, müssen Sie den Prozess, wie unten definiert mit einem Gateway modellieren. Der Vorgangseigentümer erhält dann eine manuelle Entscheidungsaufgabe.

Hier ist ein Prozessfluss modelliert, wo sich der Pfad nach einer Aktivität an einem Gateway teilt.

Wie kann ich automatisierte Entscheidungen modellieren?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie während der Prozessausführung Entscheidungen automatisch treffen. So wird automatisch der passende nächste Schritt im Prozess ausgewählt. Die Modellierung erfolgt in GBTEC Process Design. Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln.

Öffnen Sie GBTEC Process Design und gehen Sie über die linke Menüleiste zum Menüpunkt Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Ihr Diagramm muss mindestens eine Sequenz enthalten. Wählen Sie eine Sequenz aus. Öffnen Sie anschließend in der Registerkarte Details in der rechten Seitenleiste die Attributgruppe Automatisierung. Definieren Sie in der Attributgruppe Ausdruck einen Ausdruck, der festlegt, welcher Pfad im Prozess weiter ausgeführt wird.

Der Screenshot zeigt Ihnen das Attribut "Ausdruck" in den Details aus GBTEC Process Design.

Bemerkung

Wenn Sie ein paralleles Gateway verwenden, müssen Sie keinen Ausdruck eingeben. Alle ausgehenden Sequenzflüsse werden automatisch ausgeführt.

Den Ausdruck erstellen Sie mit der Syntax der Programmiersprache Java. Eine Übersicht der wichtigsten Zeichen finden Sie in der Tabelle unten. Der Ausdruck muss als Ergebnis entweder true (wahr) oder false (falsch) zurückgeben. Sie können zum Beispiel Prozessvariablen verwenden, die aus vorherigen REST Abfragen oder regelbasierten Aufgaben stammen.

Hier wird das Attribut "Ausdruck" in GBTEC Process Design gezeigt, in dem Sie Ausdrücke für eine automatisierte Entscheidungsfindung in GBTEC Work Orchestrator angeben können.

Übersicht über die Notation

Symbol

Erklärung

Symbol

Erklärung

&&

Logisches Und

<

Kleiner als

||

Logisches Oder

<=

Kleiner oder gleich

==

Vergleich von Ausdrücken (wird mit true und false benutzt)

=

Gleich

true

Der Ausdruck ist wahr

!=

Ungleich

false

Der Ausdruck ist falsch

>=

Größer oder gleich

>

Größer als

Der Ausdruck (age >= 18) == true prüft, ob der Wert der Prozessvariable größer oder gleich 18 ist. Wenn dies der Fall ist (also true), wird der entsprechende Pfad im Prozess ausgeführt.

Sie können außerdem, JUEL-Ausdrücke (Java Unified Expression Language) verwenden um ausdrücke zu definieren. Dabei können Sie sowohl einfache Variablen auf der ersten Ebene, wie z.B. user.identity == 'email@gbtec.com', als auch komplexe Variablen mit mehreren Ebenen verwenden, um auf bestimmte Eigenschaften dieser Variable zu verweisen, wie z.B. user.identity.email == 'email@gbtec.com'. Weitere Informationen zu JUEL-Ausdrücken finden Sie hier.

Warnung

Bitte beachten Sie, dass bei JUEL Ausdrücken wie zum Beispiel:
{{budget > 1000 ? "budget exceeded" : "budget not exceeded"}}
auch Ergebnisse nicht als true oder false ausgewertet werden können.

Sobald Sie die Ausdrücke definiert haben und das Diagramm alle Anforderungen erfüllt, können Sie automatisierte Entscheidungen im Prozess verwenden.

Ändert sich nun in GBTEC Work Orchestrator der Wert einer Prozessvariable, z.B. durch eine Änderung in einer Entscheidungstabelle oder durch eine manuelle Änderung eines ProcessApp Administrators, werden die Ausdrücke in denen diese Prozessvariable vorkommt, überprüft.

Wenn bei einem Gateway vom Typ Exklusives Oder der Rückgabewert des ersten Ausdrucks wahr ist, wird der entsprechende Pfad im Prozessfluss ausgewählt und angezeigt. Wenn der Rückgabewert falsch ist, wird der nächste Ausdruck geprüft.

Das Exklusive Oder kann auch dazu verwendet werden, festzustellen, ob in einer zuvor ausgeführten Aufgabe eine Datei hochgeladen wurde. In einem entsprechenden Diagramm muss dafür mindestens eine Aktivität, die über eine Kante mit einem Dokument verbunden ist, zusätzlich durch ein Exklusives Oder mit mindestens zwei weiteren Aktivitäten verknüpft sein. Um dies umzusetzen, wird der Dateioutput in dieser Aktivität mit einem frei wählbaren Identifizierer versehen, in unserem Beispiel verwenden wir invoice. Die aus dem Exklusiven Oder herausführenden Kanten werden anschließend mit den Ausdrücken invoice != null und invoice == null beschriftet. So können Sie steuern, welcher Pfad im Prozess ausgeführt wird, ohne vorher zu prüfen, ob die Variable existiert. Wird im Gateway die Bedingung invoice != null verwendet, folgt der Prozess nur dann diesem Pfad, wenn eine Datei vorhanden ist. Wurde keine Datei hochgeladen, wird automatisch der alternative Pfad gewählt.

Handelt es sich um ein Gateway vom Typ Inklusives Oder, werden alle Ausdrücke unabhängig von ihrer Reihenfolge überprüft. Für alle Ausdrücke, die den Wert wahr zurückgeben, wird der entsprechende Pfad im Prozessfluss angezeigt.

Wenn keiner der Ausdrücke den Wert true zurückgibt, bleibt der Prozess an diesem Punkt stehen, da kein nächster Schritt ausgewählt werden kann. Um das zu vermeiden, muss der Prozess so geplant werden, dass immer eine Entscheidung getroffen werden kann. Alternativ kann statt einer automatisierten Entscheidung eine manuelle Entscheidung verwendet werden.

Warnung

Wenn Sie eine Aktivität mit zwei oder mehr ausgehenden Sequenzflüssen ohne Gateway modellieren, muss die Entscheidung mit Hilfe von Ausdrücken automatisiert werden. Andernfalls kann es zu unerwünschtem Verhalten kommen, da manuelle Entscheidungsaufgaben nur für Gateways erstellt werden. Ein Beispiel dazu finden Sie hier.

Warnung

Wenn ein Vorgang nur automatische Aufgaben enthält, wird er nach zehn Ausführungen hintereinander automatisch gestoppt. Sie können den Vorgang danach manuell neu starten. Dadurch wird der Zähler zurückgesetzt. Wenn mehr Ausführungen nötig sind, können Sie die maximale Anzahl im Process Execution Editor ändern. Der Standardwert ist 10, der Mindestwert ist 1.

Bemerkung

Bitte beachten Sie, dass nur offene automatische Entscheidungen in einem Vorgang durch Änderungen von Prozessvariablen angepasst werden können. Entscheidungen, die bereits getroffen wurden, können nicht mehr geändert werden.

Hinweis

Wird eine Aufgabe beendet, die sich direkt vor einer automatischen Entscheidung befindet, wird die nächste Aufgabe, die sich aus dem Entscheidungspfad ergibt, automatisch gestartet.

Wie können Variablen über Zwischen- und Endereignisse an andere Prozesse weitergegeben werden?

Als Benutzer mit der Benutzerrolle ProcessApp Creator können Sie über ein Zwischen- oder Endereignis automatisch einen weiteren Prozess starten oder einen bestehenden Prozess fortsetzen. Dabei können Sie gleichzeitig Variablen übergeben.

Wenn Sie sich aktuell in GBTEC Work Orchestrator befinden, können Sie über den Fokus Process Design im Fokus-Drop-Down-Menü in der Kopfzeile direkt zu GBTEC Process Design wechseln. Öffnen Sie GBTEC Process Design und gehen Sie über die linke Menüleiste zum Menüpunkt Diagramme. Dort können Sie entweder ein neues Diagramm erstellen oder ein bestehendes Diagramm auschecken. Wählen Sie anschließend in diesem Diagramm das Zwischen- oder Endereignis aus, das den weiteren Prozess auslösen soll. Für dieses Ereignis muss ein Identifizierer vergeben und der Ereignistyp Nachricht (Auslösung) ausgewählt werden. Klicken Sie dazu in der rechten Seitenleiste auf das Textfeld Identifizierer und vergeben Sie einen Namen. Dieser Identifizierer stellt die eindeutige Verbindung zwischen dem Hauptprozess und dem nachgelagerten Prozess her. Wählen Sie anschließend den Ereignistyp Nachricht (Auslösung) aus.

Der Screenshot zeigt die Möglichkeit einen Identifizierer und einen Ereignistyp, in der rechten Seitenleiste in Details festzulegen.

Um festzulegen, welche Informationen an den Unterprozess weitergeleitet werden, wechseln Sie anschließend zum Reiter Optionen in der rechten Seitenleiste und wählen den Process Execution Editor aus. In der Payload-Konfiguration im Process Execution Editor können Sie in einer JSON-Struktur zusätzliche Variablen definieren, die an den Unterprozess übergeben werden. So können Sie Prozessvariablen gezielt weitergeben.

JSON-Struktur zum rauskopieren:

[
    {
        "sourceVariable": "department"
    },
    {
        "sourceVariable": "employeeId"
    }
]

Im Beispiel oben werden die Variablen department und employeeId automatisch weitergegeben. Sobald der Ereignistyp Nachricht (Auslösung) ausgelöst wird, wird der aktualisierte Wert in der Payload gesetzt. Der nachfolgende Prozess erhält dadurch direkt die neuen Informationen zu den Variablen department und employeeId, ohne dass eine zusätzliche Zuordnung nötig ist.

Der Screenshot zeigt die Payload Konfiguration im Process Excecution Editor an und die Möglichkeit über eine JSON Struktur Prozessvariablen zu definieren.

Hinweis

Bitte beachten Sie, dass bei der Übergabe von Variablen vordefinierte Systemvariablen (z. B. _case.name) in der JSON-Struktur nicht verwendet werden können.

Zur Konfiguration des empfangenden Ereignisses öffnen Sie ein Diagramm, das Ihren Unterprozess darstellt. Geben Sie dort den Identifizierer an, den Sie zuvor im Hauptprozess festgelegt haben. Wählen Sie anschließend den Ereignistyp Nachricht (Abfangen) aus. Dadurch kann der Unterprozess gestartet oder fortgesetzt werden und die gesendeten Daten empfangen.

Bemerkung

Da die Variablen direkt an den Unterprozess übergeben werden, stehen sie dort sofort zur Verfügung und können direkt verwendet werden.

Wie kann ich wartende Ereignisse mit REST API verarbeiten?

Mit der GBTEC Work Orchestrator REST API können nicht nur neue Vorgänge aus externen Anwendungen erstellt, sondern auch wartende Ereignisse verarbeitet werden. Um diese Möglichkeit nutzen zu können, benötigen Sie den REST Endpoint und einen API Key, den Sie im Request Header mitgeben.

Über den folgenden Link zur Swagger-UI können Sie die verfügbaren öffentlichen Endpoints einsehen und wartende Ereignisse verarbeiten. Oben rechts auf dem Bildschirm müssen Sie unter Select a definition GBTEC Work Orchestrator API auswählen. In der daraufhin erscheinenden Liste finden Sie dann den Endpoint Throw a signal event, in dem Sie Variablen anpassen und ein wartendes Ereignis verarbeiten können.

Tipp

Sollte der Link zur Swagger-UI nicht funktionieren, geben Sie bitte die folgende URL manuell ein: https://{{host}}/public/webjars/swagger-ui/index.html, wobei {{host}} für Ihren Host steht.

Hinweis

Der alte REST Endpoint {{host}}/process-execution/external/tenants/{{tenantId}}/stages/{{stageId}}/signal-events ist derzeit noch verfügbar. Bitte verwenden Sie jedoch in Zukunft den neuen Endpoint.

Hinweis

Wenn Sie zuvor den alten REST Endpoint genutzt haben und nun mit Swagger UI arbeiten, müssen Sie einen neuen API Key generieren. Bitte beachten Sie, dass der neue API Key entsprechend in der REST Abfrage angepasst werden muss.

Wie kann ich die Metadaten eines Ausgabedokuments aufrufen?

Um die Metadaten eines Ausgabedokuments aufzurufen, muss in der Prozessausführung ein Ausgabedokument vorhanden sein. Dies gilt für Augabedokumente die für Aufgabenformulare, Service Aufgaben, Berichte oder Aktivitäten erzeugt wurden.

Sobald in der Prozessausführung ein Dokument hinterlegt wurde, können Sie die Größe, das Datum sowie den Namen des Dokuments einsehen. Um diese Informationen zu prüfen, öffnen Sie das Kontextmenü über die drei Punkte neben dem entsprechenden Prozessschritt und wählen dort die Option Prozessvariablen bearbeiten aus. So gelangen Sie zu den Variablen, in denen die Dokumentinformationen angezeigt werden.

Der Name entspricht dem hinterlegten Identifizierer. Wurde kein Identifizierer definiert, wird automatisch ein zufälliger Name vergeben. So ist jederzeit nachvollziehbar, welche Datei im Rahmen des Prozesses erzeugt oder abgelegt wurde.

Wie kann ich eine Applikation in das Aufgabenformular integrieren?

Applikationsobjekte, die Sie in GBTEC Process Design modelliert haben, können Sie auch in GBTEC Work Orchestrator integrieren und so den Benutzern bei der Prozessausführung zur Verfügung stellen. Um ein solches Applikationsobjekt zu integrieren, muss dieses Objekt in GBTEC Process Design eine Verbindung zu einem der Aktivitätsobjekte in Ihrem Diagramm haben.

In dem hier gezeigten Bild sehen Sie ein Beispieldiagramm, in dem ein Applikationsobjekt mit Verbindung zu einem Aktivitätsobjekt existiert.

In den Details des Applikationsobjekts können Sie die gewünschte Applikation verlinken, um diese dann in der Prozessausführung von GBTEC Work Orchestrator zur Verfügung zu stellen. Verwenden Sie dazu das Attribut Integrationslink im Abschnitt Automatisierung. In diesem Attribut können Sie analog zum Attribut Anlagen (URL) Links einfügen oder alternativ Dokumente hochladen.

Der hier gezeigte Screenshot zeigt das Attribut "Integrationslink" in den Details eines Applikationsobjekt.

Bei der Verlinkung Ihrer Applikation können Sie auch Prozessvariablen einbinden, wenn Sie wissen, dass diese vor der Ausführung der jeweiligen Aufgabe definiert werden. Fügen Sie dazu den Variablennamen in zwei geschweiften Klammern an der entsprechenden Stelle im Pfad ein. Ein solcher Pfad könnte beispielsweise wie folgt aussehen:

mailto://{{emailEmpfaenger}}?subject={{emailBetreff}}&cc={{emailEmpfaengerCC}}&body={{emailText}}

Hier werden folgende Prozessvariablen verwendet: emailEmpfaenger, emailBetreff, emailEmpfaengerCC und emailText

Bei der Eingabe einer Variable als Platzhalter steht Ihnen die Auswahl zwischen JUEL-Ausdruck und String-Ersetzung zur Verfügung. Die gewünschte Variante legen Sie direkt im Drop-Down-Menü im oberen Bereich in der Option Process Execution Editor in der Registerkarte Optionen in der rechten Seitenleiste fest.

Der Screenshot zeigt Ihnen die Auswahl zwischen "JUEL-Ausdruck" und "String-Ersetzung" im Drop-Down-Menü im oberen Bereich des "Process Execution Editors".

Bitte beachten Sie, dass beide Varianten nicht gleichzeitig unterstützt werden. Diagramme, die vor der 8.0.0 Version erstellt wurden, verwenden automatisch die bisherige String-Ersetzungslogik. Für neu erstellte Diagramme hingegen ist nun standardmäßig die JUEL-Variante vorausgewählt. Unabhängig davon können Sie die gewählte Option jederzeit anpassen, jedoch wird die Umstellung von neuen Diagrammen auf die String-Ersetzung nicht empfohlen.

Tipp

Weitere Informationen über JUEL-Ausdrücke erfahren Sie hier.

Wenn Sie das Attribut definiert haben und Ihr Diagramm alle Anforderungen erfüllt, um in GBTEC Work Orchestrator angezeigt zu werden, wird Ihnen die Applikation unter dem Abschnitt Applikationen im Aufgabenformular der entsprechenden Aufgabe angezeigt. Unterhalb des Applikationsnamens wird Ihnen der Titel des Links angezeigt, sofern ein Titel für den Link vorhanden ist. Andernfalls wird Ihnen hier die URL des Links angezeigt. Über den Integrations-Link können Sie die Applikation aufrufen.

In dem hier gezeigten Bild sehen Sie den Abschnitt Applikationen in dem Formular einer Aufgabe, sowie einen selektierbaren Integrationslink.

Wurden für eine Applikation mehrere Links integriert, wird Ihnen nach Auswahl des Integrations-Link ein Kontextmenü angezeigt, in dem die entsprechenden Links aufgelistet sind. Sie können dann einen Link auswählen, um die gewünschte Applikation zu öffnen.

Der hier aufgeführte Screenshot zeigt das Kontextmenü einer Applikation mit mehreren Integrationslinks.

Formeln

Formeln können für verschiedene Zwecke verwendet werden. Zum Beispiel können Sie Formeln im Formular-Editor benutzen. Darüber hinaus haben Sie im Formular-Editor die Möglichkeit, bestimmte Attribute dynamisch zu gestalten, um Ihr Aufgabenformular individueller zu machen.

In diesem Kapitel finden Sie zunächst eine Übersicht über die verfügbaren Formeln und die dafür benötigten Parameter. Am Ende des Kapitels finden Sie verschiedene Beispiele, was Sie mit den Formeln berechnen können. Außerdem finden Sie hier ein Beispiel, das verdeutlicht, wie Sie Ihr Formular dynamisch gestalten können.

Die meisten Formeln, die Sie aus Microsoft Office Excel kennen, werden unterstützt. Es ist möglich, Formeln in einfacher JavaScript-Syntax zu schreiben. Zum Beispiel wäre 2+6 auch eine gültige Formel mit dem Rückgabewert 8.

Einige Formeln benötigen Parameter, für die natürlich auch bereits vorhandene Prozessvariablen verwendet werden können. Diese müssen dann aber in zwei geschweifte Klammern eingeschlossen werden (z.B. {{VariableName}}). Hier finden Sie Beispiele mit bereits deklarierten Prozessvariablen und wie Sie diese in Formeln verwenden können.

Wenn Sie Text- oder Datumseingaben als Parameter verwenden, müssen diese in einfache Anführungszeichen LEN('Beispiel') eingeschlossen werden.

Tipp

Formeln können beliebig oft und komplex verschachteln werden. Das bedeutet, dass Sie ebenfalls Formeln als Eingabeparameter verwenden können.

Welche Formeln gibt es?

Bemerkung

Dieser Abschnitt wird derzeit laufend überarbeitet und ist daher noch nicht vollständig. Eine vollständige Übersicht über alle verwendbaren Formeln finden Sie in der Dokumentation von Formula.js .

Insgesamt lassen sich die Formeln in sechs verschiedene Bereiche einteilen:

Datumsformeln

Häufig wird für Datumsformeln der Datentyp datetime benötigt.

Der Datentyp datetime kann unterschiedlich aufgebaut sein. Wenn Sie nicht vordefinierte Prozessvariablen verwenden, sollten Sie daher auf die richtige Schreibweise achten. Ohne Uhrzeit sieht dies wie folgt aus: 'monat/tag/jahr' z.B. '7/16/1968' für den 16. Juli 1968 oder 'tag-monat-jahr' z.B.. '14-Aug-1967' für den 14. August 1967. Wichtig bei der zweiten Variante ist, dass Sie den Monat in der englischen Kurzschreibweise verwenden. Eine Liste dieser Abkürzungen finden sie in der folgenden Tabelle. Wenn Sie eine Formel verwenden, die mehr als zwei Parameter vom Typ datetime benötigt, müssen Sie die gleiche Formatierung wählen. Wenn Sie einen Wert vom Datentyp datetime einschließlich der Uhrzeit angeben möchten, verwenden Sie eine der oben beschriebenen Möglichkeiten und fügen Sie 'hh:mm:ss AM/PM' an. Die Angabe von Sekunden ist optional. Beispiel: 02/12/1984 08:30:00 AM' würde 8:30 Uhr morgens am 12. Februar 1984 bedeuten. Weitere Beispiele für die Verwendung von datetime Variablen finden Sie hier.

Abkürzungen für Monate

Monat

Januar

Februar

März

April

Mai

Juni

Abkürzung

Jan

Feb

Mar

Apr

May

Jun

Monat

Juli

August

September

Oktober

November

Dezember

Abkürzung

Jul

Aug

Sep

Oct

Nov

Dec

Daten extrahieren

Es gibt verschiedene Datumsformeln, mit denen Sie konkrete Werte aus einem Datum extrahiert werden können. Dazu geben Sie das entsprechende Datum als Parameter im datetime-Format an. Zum Beispiel: YEAR(06/10/2021) liefert den Wert 2021.

  • YEAR({{datetime}}) gibt das Jahr eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 1900 und 9999.

  • MONTH({{datetime}}) gibt den Monat eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 1 und 12.

  • WEEKNUM({{datetime}},[{{mode}}]) gibt die Kalenderwoche eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 1 und 53. Der zweite Parameter mode definiert, ob die Woche am Sonntag (mode = 1) oder am Montag (mode = 2) beginnt. Wenn Sie den Parameter nicht angeben, wird standardmäßig mode = 1 verwendet.

  • ISOWEEKNUM({{datetime}}) gibt die Kalenderwoche eines datetime-Wertes zurück. Hierbei werden die korrekten Kalenderwochen verwendet, d.h. die erste Woche mit einem Donnerstag in einem neuen Jahr ist Kalenderwoche 1.

  • WEEKDAY({{datetime}},[{{mode}}]) gibt den Wochentag eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 1 und 7. Der zweite Parameter ist analog zur Formel WEEKNUM zu verwenden.

  • DAY({{datetime}}) gibt den Tag eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 1 und 31.

  • HOUR({{datetime}}) gibt die Stundenzahl eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 0 und 23.

  • MINUTE({{datetime}}) gibt die Minutenzahl eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 0 und 59.

  • SECOND({{datetime}}) gibt die Sekundenzahl eines datetime-Wertes zurück. Der Rückgabewert ist eine ganze Zahl und liegt zwischen 0 und 59.

Zeitspannen messen

Die folgende Tabelle zeigt Ihnen die verschiedenen Modi und welche Teile der Woche zum Wochenende gehören.

<mode>

Wochenende

<mode>

Wochenende

1

Samstag und Sonntag

11

nur Sonntag

2

Sonntag und Montag

12

nur Montag

3

Montag und Dienstag

13

nur Dienstag

4

Dienstag und Mittwoch

14

nur Mittwoch

5

Mittwoch und Donnerstag

15

nur Donnerstag

6

Donnerstag und Freitag

16

nur Freitag

7

Freitag und Samstag

17

nur Samstag

Die folgenden Formeln können verwendet werden, um den Abstand zwischen zwei Tagen zu messen.

  • DAYS({{enddate}}, {{startdate}}) gibt die Differenz an Tagen zwischen einem Start- und einem Enddatum an. Ein konkretes Beispiel finden sie hier.

  • WORKDAY({{datetime}}, {{k}}) gibt den k-nächsten Werktag zurück. Dabei werden Montag bis Freitag als Werktage gezählt.

  • WORKDAYINTL({{datetime}}, {{k}}, {{mode}}) gibt den k-nächsten Werktag zurück. mode definiert hier, was als Wochenende zählt. Oben finden Sie eine Tabelle, die alle Modi erläutert.

  • NETWORKDAYS({{startdate}}, {{enddate}}, [{{listOfHolidays}}]) gibt die Anzahl an Werktagen (Montag bis Freitag) zwischen zwei Daten zurück. Wochenenden (Samstag und Sonntag) werden automatisch nicht mitgezählt. Zusätzlich haben Sie die Möglichkeit, eine Liste von Feiertagen zu übergeben, die ebenfalls nicht mitgezählt werden. Weitere Informationen dazu finden Sie in unserem Beispiel Wie berechne ich Arbeitstage.

  • NETWORKDAYSINTL({{startdate}}, {{enddate}}, {{mode}}, [{{listOfHolidays}}] gibt die Anzahl an Werktagen zwischen zwei Daten zurück (siehe Formel NETWORKDAYS). mode definiert hier, welche Tage zum Wochenende gehören. Oben finden Sie eine Tabelle, die alle Modi erläutert.

  • DAYS360({{start}}, {{end}}, {{method}}) gibt die Differenz an Tagen zwischen einem Startdatum start und einem Enddatum end zurück. Dabei wird angenommen, dass ein Jahr 360 Tage hat (also aus 12 mal 30 Tagen besteht). Der Parameter method gibt an, ob nach der US-amerikanischen Methode (method = FALSE()) oder nach der europäischen Methode (method = TRUE()) gerechnet werden soll. Beispiel: DAYS360('12/1/2021','1/1/2022',TRUE()) liefert als Ausgabe 30 Tage. Die Methoden unterscheiden sich dabei wie folgt:
    • Europäische Methode: Wenn ein Start- oder Enddatum auf den 31. Tag eines Monats fällt, wird dieser Tag dem 30. des betreffenden Monats gleichgesetzt.

    • US-amerikanische Methode: Fällt ein Startdatum auf den 31. Tag eines Monats, so wird dieser Tag mit dem 30. des betreffenden Monats gleichgesetzt. Wenn jedoch das Enddatum auf den 31. fällt, ist entscheidend, auf welchen Tag das Startdatum fällt. Fällt dieses auf einen Tag vor dem 30., so wird der 1. des Folgemonats als Enddatum verwendet. Andernfalls wird das Enddatum auf den 30. des betreffenden Monats gesetzt.

  • YEARFRAC({{start}}, {{end}}, {{mode}}) gibt einen Zeitraum innerhalb eines Jahres als Ausgabe zwischen 0 und 1 zurück, wobei start das Startdatum und end das Enddatum bezeichnet. Mit dem Parameter mode kann eine von fünf Berechnungsmethode angegeben werden:
    • mode = 0: Die Differenz wird nach der US-amerikanischen Methode berechnet (s. Formel DAYS360) und das Ergebnis durch 360 geteilt.

    • mode = 1: Die tatsächliche Differenz in Tagen wird durch die tatsächliche Anzahl der Tage im Jahr geteilt.

    • mode = 2: Die tatsächliche Differenz in Tagen wird durch 360 geteilt.

    • mode = 3: Die tatsächliche Differenz in Tagen wird durch 365 geteilt.

    • mode = 4: Die Differenz wird nach der europäischen Methode berechnet (s. Formel DAYS360) und das Ergebnis wird durch 360 geteilt.

  • DATEDIF({{startdate}}, {{enddate}}, {{einheit}}) gibt Ihnen den Zeitraum zwischen zwei Tagen an. Sie können zwischen den folgenden Einheiten wählen:
    • Y: Anzahl der vollständigen Jahre.

    • M: Anzahl der vollständigen Monate.

    • D: Anzahl der Tage.

    • MD: Differenz zwischen den Tagen; Monate und Jahre werden ignoriert.

    • YM: Differenz zwischen den Monaten; Tage und Jahre werden ignoriert.

    • YD: Differenz zwischen den Tagen; Jahre werden ignoriert.

Aktuelles Datum

Die folgenden Formeln können verwendet werden, um das aktuelle Datum zurückzugeben.

  • TODAY() gibt Ihnen das aktuelle Datum im datetime Format zurück.

  • NOW() gibt Ihnen das aktuelle Datum inklusive der aktuellen Uhrzeit im datetime Format zurück.

Datum konvertieren

Mit diesen Formeln können Sie Daten in das datetime Format umwandeln.

  • DATE({{jahr}}, {{monat}}, {{tag}}) wandelt ein beliebiges Datum ins datetime Format um.

  • TIME({{stunde}}, {{minute}}, {{sekunde}}) gibt Ihnen eine Zeitspanne als Dezimalzahl in Tagen zurück. 24 Stunden entsprechen folglich dem Wert 1, 12 Stunden dem Wert 0,5, usw.

  • DATEVALUE({{zeichenkette}}) konvertiert Texte, wenn möglich, in ein gültiges datetime Format.

  • TIMEVALUE({{zeichenkette}}) konvertiert Texte, wenn möglich, in eine Zeitspanne als Dezimalzahl (s. TIME).

Zeitspannen addieren

  • EDATE({{datetime}}, {{k}}) addiert k Monate zu einem Datum. k kann auch negativ sein, um ein Datum in der Vergangenheit zu berechnen. Beispiel: EDATE('2/5/2021',3) gibt den 05.05.2021 zurück.

  • EOMONTH({{datetime}}, {{k}}) geht von datetime k Monate in die Zukunft und gibt Ihnen das entsprechende Monatsende zurück. k kann auch Null sein. In diesem Fall wird das Monatsende von date zurückgegeben. Ebenso kann k auch negativ sein, um ein Datum in der Vergangenheit zu berechnen. Zum Beispiel würde EOMONTH('2/1/2021',3) den 31.05.2021 zurückgeben.

Bemerkung

Wenn bei der Eingabe einer Formel eine Fehlermeldung auftritt, kann das Problem mit der Datumsfunktion zusammenhängen. In diesem Fall kann der Fehler durch die Verwendung von .toISOString() wie im folgenden Beispiel WORKDAY({{createdDate}}, 10).toISOString() behoben werden.

Formatierung von Datumsvariablen mit DateUtils.format

Als ProcessApp Creator können Sie Datumsvariablen mit der Hilfsfunktion DateUtils.format(date, pattern,timeZone) in ein einheitliches, gut lesbares Format bringen. Diese Funktion unterstützt sowohl Standard-Datumsformate als auch ISO-Formate und ermöglicht die Berücksichtigung von Zeitzonen. Sie basiert intern auf den Java Development Kit Version 17 API Spezifikationen. Informationen zu den verwendeten Formatierungsmustern (SimpleDateFormat) finden Sie unter folgendem Link, und Informationen zu Zeitzonen (TimeZone API) unter diesem Link

Die Formatierung von Datumsvariablen mit dieser Hilfsfunktion steht Ihnen für Service Aufgaben mit REST Abfragen, Skriptaufgaben unter Einsatz von KI, Sendeaufgaben, zeitbasierte Zwischenereignisse sowie zur Verlinkung von Applikationen zur Verfügung. Im Folgenden finden Sie Beispiele für die Verwendung dieser Hilfsfunktion:

Beispiel: Datumsvariable in String formatieren

DateUtils.format(startDate, "dd.MM.yyyy") formatiert die Variable „startDate“ mit dem Wert Wed Jul 09 00:00:00 UTC 2025 zu 09.07.2025.

Beispiel: Datumvariable mit ISO-Muster formatieren

DateUtils.format(eventDate, "yyyy-MM-dd") formatiert die Variable „eventDate“ mit dem Wert 2024-12-31T23:59:59Z zu 2024-12-31.

Beispiel: Datumsvariable mit Zeitzonen formatieren

DateUtils.format(eventDate, "yyyy-MM-dd HH:mm:ss XXX", "GMT-8:00") formatiert die Variable „eventDate“ mit dem Wert 2025-01-01T00:00:00Z unter Berücksichtigung der Zeitzone GMT-8 zu 2024-12-31 16:00:00 -08:00.

Beispiel: Datumsvariable mit ungültiger Zeitzone formatieren

DateUtils.format(eventDate, "yyyy-MM-dd HH:mm:ss XXX", "not-valid") formatiert die Variable „eventDate“ mit dem Wert 2025-01-01T00:00:00Z bei ungültiger Zeitzone und liefert 2025-01-01 00:00:00 Z.

Beispiel: Datumsvariable mit dem Wert „null“ formatieren

DateUtils.format(dueDate, "yyyy-MM-dd") formatiert die Variable „dueDate“ mit dem Wert null und liefert eine leere Zeichenkette.

Beispiel: Datumsvariable mit ungültigem oder nicht-unterstütztem Muster formatieren

DateUtils.format(createdAt, "invalid-pattern") formatiert die Variable „createdAt“ mit dem Wert 2025-01-01T00:00:00Z bei ungültigem Muster und gibt das Datum im ISO-Format zurück.

Bemerkung

Die Datumsformatierung mit DateUtils.format() ist nur möglich, wenn im Process Execution Editor die Methode zur Auswertung von Platzhaltern auf „JUEL-Ausdruck“ gesetzt ist. DMN-Tabellen werden aktuell nicht unterstützt.

Logische Funktionen

Logische Funktionen können zur Auswertung logischer Ausdrücke verwendet werden.

Bemerkung

Logische Ausdrücke sind immer TRUE (wahr) oder FALSE (falsch). Wenn Sie also logische Operatoren in Ihrer Formel benötigen, müssen Sie darauf achten, dass Ihre Parameter den richtigen Datentyp haben.

  • TRUE() entspricht dem logischen Wert TRUE.

  • FALSE() entspricht dem logischen Wert FALSE.

Logische Operatoren

  • AND({{log_a}}, {{log_b}}, ...) gibt den Wert TRUE zurück, wenn alle Parameter TRUE sind. Andernfalls wird FALSE zurückgegeben.

  • OR({{log_a}}, {{log_b}}, ...) gibt den Wert TRUE zurück, wenn mindestens ein Parameter TRUE ist. Anderfalls wird FALSE zurückgegeben.

  • XOR({{log_a}}, {{log_b}}, ...) gibt den Wert TRUE zurück, wenn exakt ein Parameter TRUE ist. Anderfalls wird FALSE zurückgegeben.

  • NOT({{log_a}}) negiert den Parameter. TRUE wird zu FALSE und FALSE wird zu TRUE.

Bedingte Zuordnungen

  • IF({{bedingung}}, {{wert1}}, {{wert2}}) gibt einen von der Bedingung abhängigen Wert zurück. Wenn bedingung TRUE ist, wird der erste Wert (wert1) zurückgegeben. Andernfalls wird der zweite Wert (wert2}}) zurückgegeben. Zum Beispiel würde die Formel IF(TRUE(),2,3) den Wert 2 zurückgeben.

  • IFS({{bedingung}}, {{wert1}}, {{bedingung2}}, {{wert2}}, ...) ermöglicht die Verwendung mehrerer Abfragen. Es wird geprüft, ob eine Bedingung erfüllt ist. Ist dies der Fall, wird der entsprechende Wert zurückgegeben. Ist die Bedingung nicht erfüllt, wird die nächste Bedingung geprüft. Sobald eine Bedingung gefunden wird, die TRUE ist, wird nicht weiter geprüft. IFS(TRUE(), 2, TRUE(), 5) würde also nur 2 zurückgeben.

  • SWITCH({{vgl_Wert}}, {{check_1}}, {{return_1}}, {{check_2}}, {{return_2}}, ...) vergleicht den ersten Parameter vgl_Wert mit den zu vergleichenden Werten (hier: check_1 und check_2) und prüft, ob diese übereinstimmen. Ist eine Prüfung erfolgreich, gibt die Formel den entsprechenden Rückgabewert zurück. Zum Beispiel: SWITCH(7,9,'neun',7,'sieben') gibt sieben zurück, da die Prüfung ergeben hat, dass 7 und 7 gleich sind.

  • IFERROR({{formel}},{{ausgabe}}) evaluiert die innere formel. Wenn diese einen Wert zurückgibt, wird dieser ausgegeben, andernfalls wird ausgabe zurückgegeben. Beispiel: IFERROR(8/2,'Fehler bei der Berechnung') gibt 4 zurück. IFERROR(8/0,'Fehler bei der Berechnung') würde Fehler bei der Berechnung zurückgeben. Natürlich können Sie hier auch alle anderen hier beschriebenen Formeln verwenden.

Textformeln

Formeln, die mit Texten arbeiten, benötigen in der Regel eine oder mehrere Zeichenketten als Parameter. Um eine Zeichenkette als solche zu deklarieren, muss sie in einfache Anführungszeichen eingeschlossen werden. Beispiel: LEN('Beispiel'). Alternativ können Sie auch vordefinierte Prozessvariablen verwenden. Eine Erklärung hierzu finden Sie hier.

Textextraktion

Mit diesen Formeln können bestimmte Teile oder andere Informationen aus Texten extrahiert werden.

  • RIGHT({{zeichenkette}}, {{num}}) gibt die num der rechten Zeichen von zeichenkette zurück. Beispiel: RIGHT('Verkaufspreis',5) gibt preis zurück.

  • LEFT({{zeichenkette}}, {{num}}) gibt die num der linken Zeichen von zeichenkette zurück.

  • MID({{zeichenkette}}, {{startPos}}, {{num}}) gibt Ihnen einen Teil der Zeichenkette zeichenkette zurück. Einschließlich des Zeichen mit dem Index startPos werden num Zeichen zurückgegeben. Beispiel: MID('Peter fährt Taxi', 7, 5) gibt die Zeichenkette fährt zurück.

  • LEN({{zeichenkette}}) gibt zurück, wie viele Zeichen zeichenkette hat.

  • REPT({{zeichenkette}}, {{num}}) gibt zeichenkette num-mal wiederholt zurück. Beispiel: REPT('x',5) gibt xxxxx zurück.

  • SEARCH({{suchbegriff}}, {{zeichenkette}}) sucht in zeichenkette nach suchbegriff und gibt zurück, ab welchem Zeichen die gesuchte Zeichenkette vorkommt. Die Suche ignoriert hierbei Groß- und Kleinschreibung. Kommt eine Zeichenkette mehrfach vor, wird nur der kleinste Index zurückgegeben. Beispiel: SEARCH('margin', 'Profit Margin') würde 8 zurückgeben. Wenn die Zeichenkette nicht gefunden werden kann, gibt die Formel einen Fehler zurück.

  • FIND({{suchbegriff}}, {{zeichenkette}}, [{{startPos}}]) sucht in einer Zeichenkette zeichenkette nach suchbegriff und gibt die Posiiton aus, an der der Suchbegriff zum ersten Mal gefunden wurde. startPos gibt die Möglichkeit, den Suchbegriff erst ab einer bestimmten Position zu suchen. Beispiel: FIND('t','Peter fährt Auto',12) gibt 15 zurück. Wenn der Parameter startpos nicht gesetzt ist, beginnt die Suche beim ersten Zeichen.

  • REGEXEXTRACT({{zeichenkette}}, {{expression}}) sucht in zeichenkette nach dem regulären Ausdruck expression und gibt die erste Übereinstimmung dieser zurück.

Textmanipulation

Textmanipulationsformeln werden verwendet, um bestehende Zeichenketten zu verändern.

  • LOWER({{zeichenkette}}) wandelt zeichenkette in Kleinbuchstaben um und gibt ihn zurück.

  • UPPER({{zeichenkette}}) wandelt zeichenkette in Großbuchstaben um und gibt ihn zurück.

  • PROPER({{zeichenkette}}) wandelt zeichenkette um. Das erste Zeichen wird zu einem Großbuchstaben, alle weiteren Zeichen werden zu Kleinbuchstaben. Beispiel: PROPER('peTeR') wird zu Peter.

  • TRIM({{zeichenkette}}) entfernt mehrere Leerzeichen in zeichenkette. Beispiel: TRIM('Max   Mustermann') wird zu Max Mustermann.

  • CLEAN({{zeichenkette}}) gibt die eingegebene Zeichenkette zurück, wobei alle nicht druckbaren Zeichen entfernt werden.

  • CONCATENATE({{zeichenkette1}}, {{zeichenkette2}}, ...) verkettet einzelne Zeichenketten zu einer gemeinsamen Zeichenkette. Beispiel: CONCATENATE('Max', ' ', 'Mustermann') wird zu Max Mustermann.

  • REPLACE({{zeichenkette}}, {{pos}}, {{num}}, {{replace}}) ersetzt num Zeichen in einer Zeichenkette ab der Position pos mit replace. Beispiel: REPLACE('abcdefghijk', 6, 5, '*') ergibt abcde*k.

  • SUBSTITUTE({{zeichenkette}}, {{old}}, {{new}}, [{{pos}}]) ersetzt in einer zeichenkette alle Vorkommen des Zeichens old durch new. Der Parameter pos ist optional. Er wird verwendet, wenn nicht alle Zeichen ersetzt werden sollen, sondern nur ein bestimmtes, wobei pos sich sich auf das konkrete Zeichen old bezieht. Beispiel: SUBSTITUTE('Q1-2011', '1', '2') würde alle 1 durch 2 ersetzen. Die Ausgabe ist somit Q2-2022. Wenn Sie nur die erste 1 ändern möchten, können Sie dies mit dem Parameter pos tun. SUBSTITUTE('Q1-2011', '1', '2', 1) liefert Q2-2011.

  • SPLIT({{zeichenkette}},{{delimiter}}) trennt zeichenkette an jeder Stelle, an der delimiter vorkommt. Gibt die Ergebnisse gesammelt als Liste zurück. Beispiel: Die Formel SPLIT('Peter&Max&Antonia', '&') gibt [‚Peter‘, ‚Max‘, ‚Antonia‘] zurück.

Textvergleich

Textvergleiche werden verwendet, um Zeichenketten auf Gleichheit zu prüfen und gegebenenfalls Teile davon zu ersetzen.

  • EXACT({{zeichenkette1}},{{zeichenkette2}}) prüft, ob zwei Zeichenketten einschließlich Groß- und Kleinschreibung identisch sind. Gibt TRUE zurück, wenn sie identisch sind, andernfalls FALSE.

  • REGEXMATCH({{zeichenkette}}, {{expression}}) prüft, ob der reguläre Ausdruck expression in zeichenkette enthalten ist. Ist dies der Fall, wird TRUE zurückgegeben, andernfalls FALSE.

  • T({{var}}) prüft, ob var eine Zeichenkette ist. Wenn var eine Zeichenkette ist, wird diese zurückgegeben, andernfalls wird eine leere Zeichenkette zurückgegeben.

Textkonvertierung

Mit den folgenden Formeln können Sie Zeichenketten oder einzelne Zeichen in numerische Werte konvertiert werden und umgekehrt. Dabei wird der normale Unicode-Standard verwendet. Der Buchstabe A entspricht hier dem numerischen Wert 65.

  • UNICHAR({{number}}) formatiert eine Zahl und konvertiert sie in einen Buchstaben.

  • UNICODE({{character}}) formatiert einen Buchstaben und konvertiert ihn in eine Zahl.

  • ARABIC({{zeichenkette}}) konvertiert eine römische Zahl zeichenkette in eine arabische Dezimalzahl. Beispiel: ARABIC('XVI') gibt 16 zurück.

  • ROMAN({{number}}) konvertiert eine Zahl number in eine römische Zahl. Beispiel: ROMAN(16) gibt XVI zurück.

Mathematische Formeln

Zahlen runden

Mit den folgenden Formeln können numerische Werte gerundet werden.

  • ROUND({{number}}, {{n}}) rundet number korrekt auf n Nachkommastellen (z.B. ROUND(2.365,0) gibt 2 zurück).

  • ROUNDDOWN({{number}}, {{n}}) rundet number auf n Nachkommastellen ab.

  • ROUNDUP({{number}},{{n}}) rundet number auf n Nachkommastellen auf.

  • INT({{number}}) rundet number auf die nächste Ganzzahl ab.

  • FLOOR({{number}}, {{i}}) rundet number auf das nächste Vielfache von i ab, (z.B. FLOOR(3.1415,2) gibt 2 zurück).

  • FLOORMATH({{number}}, {{i}}, {{mode}}) rundet number auf das nächste Vielfache von i ab. mode gibt an, ob bei negativen Zahlen in Richtung 0 oder in die entgegengesetzte Richtung abgerundet wird. mode = 0 rundet in die entgegengesetzte Richtung ab (FLOORMATH(-12.1,1,0) gibt -13 zurück). mode = 1 rundet in Richtung 0 ab (FLOORMATH(-12.1,1,1) gibt -12 zurück).

  • CEILING({{number}}, {{i}}) rundet number auf das nächsthöhere Vielfache von i auf (z. B. CEILING(3.1415,3) gibt 6 zurück).

  • CEILINGMATH({{number}}, {{i}}, {{mode}}) rundet number auf das nächste Vielfache von i auf. mode gibt an, ob bei negativen Zahlen in Richtung 0 oder in die entgegengesetzte Richtung aufgerundet wird. mode = 1 rundet in die entgegengesetzte Richtung auf (CEILINGMATH(-4.1,1,1) gibt -5 zurück). mode = 0 rundet in Richtung 0 auf (CEILINGMATH(-4.1,1,0) gibt -4 zurück).

  • TRUNC({{number}}, {{n}}) schneidet nach n Nachkommastellen alle weiteren Nachkommastellen von number ab (z.B. TRUNC(2.895,1) gibt 2.8 zurück).

  • ODD({{number}}) rundet auf die nächste ungerade ganze Zahl auf.

  • EVEN({{number}}) rundet auf die nächste gerade ganze Zahl auf.

  • SIGN({{number}}) ermittelt das Vorzeichen einer Zahl. Gibt 1 zurück, wenn das Vorzeichen positiv ist. Gibt -1 zurück, wenn das Vorzeichen negativ ist und gibt 0 zurück, wenn die Zahl 0 ist.

Arithmetische Operationen

  • QUOTIENT({{dividend}}, {{divisor}}) dividiert dividend durch divisor und gibt das Ergebnis ohne Nachkommastellen zurück.

  • MOD({{dividend}}, {{divisor}}) gibt den Modulo/Rest der Division dividend durch divisor zurück.

  • POWER({{number}}, {{exponent}}) gibt das Ergebnis von number hoch exponent zurück (z.B. POWER(2,3) gibt 8 zurück).

  • FACT({{number}}) gibt die Fakultät von number zurück.

  • ABS({{number}}) gibt den Absolutwert von number zurück.

  • SQRT({{number}}) gibt die Wurzel von number zurück.

  • SQRTPI({{number}}) gibt die Wurzel von {{number}} * Pi zurück.

  • MAX({{num1}}, {{num2}}, ...) gibt den maximalen Wert aller übergebenen Werte zurück. Logische Werte und Texte werden ignoriert.

  • MAXA({{num1}}, {{num2}}, ...) gibt den maximalen Wert aller übergebenen Werte zurück. Logische Werte und Texte werden nicht ignoriert.

  • MIN({{num1}}, {{num2}}, ...) gibt den minimalen Wert aller übergebenen Werte zurück. Logische Werte und Texte werden ignoriert.

  • MINA({{num1}}, {{num2}}, ...) gibt den minimalen Wert aller übergebenen Werte zurück. Logische Werte und Texte werden nicht ignoriert.

  • SUM({{num1}}, {{num2}}, ...) gibt die Summe aller übergebenen Parameter zurück.

  • SUMIF({{Bereich}}, {{Kriterium}}, {{[Summe_Bereich]}}) gibt die Summe der Zahlen in einer Liste zurück, die einem Kriterium entsprechen. Das Kriterium wird auf die Liste Bereich angewendet. Ist dies nicht die zu summierende Liste, muss der Parameter Summe_Bereich übergeben werden.

  • SUMPRODUCT({{liste1}}, {{liste2}}) gibt die Summe der Produkte der Listen zurück.

  • SUMSQ({{num1}}, {{num2}}, ...) gibt die Summe der Quadrate der Zahlen zurück.

  • SUMX2PY2({{liste1}}, {{liste2}}) gibt die Summe der Summe der Quadrate der entsprechenden Werte in zwei Listen zurück.

  • SUMXMY2({{liste1}}, {{liste2}}) gibt die Summe der Quadrate der Differenzen der entsprechenden Werte in zwei Arrays zurück.

  • PRODUCT({{num1}}, {{num2}}, ...) gibt das Produkt aller übergebenen Parameter zurück.

  • LCM({{num1}}, {{num2}}, ...) gibt Ihnen das kleinste gemeinsame Vielfache der übergebenen Parameter zurück.

  • GCD({{num1}}, {{num2}}, ...) gibt Ihnen den größten gemeinsamen Teiler der übergebenen Parameter zurück.

Informative Funktionen

  • ISEVEN({{number}}) gibt genau dann TRUE zurück, wenn number eine gerade Zahl ist. Andernfalls wird FALSE zurückgegeben.

  • ISODD({{number}}) gibt genau dann TRUE zurück, wenn number eine ungerade Zahl ist. Andernfalls wird FALSE zurückgegeben.

Trigonometrische Funktionen

  • RADIANS({{number}}) wandelt Grad in Bogenmaß um. Beispiel: RADIANS(180) ergibt 3.14159.

  • SIN({{number}}) gibt den Sinus von number zurück.

  • SINH({{number}}) gibt den Sinus hyperbolicus von number zurück.

  • COS({{number}}) gibt den Kosinus von number zurück.

  • COSH({{number}}) gibt den Kosinus hyperbolicus von number zurück.

  • COT({{number}}) gibt den Kotangens von number zurück.

  • COTH({{number}}) gibt den Kotangens hyperbolicus von number zurück.

  • CSC({{number}}) gibt den Kosekans von number zurück.

  • CSCH({{number}}) gibt den Kosekans hyperbolicus von number zurück.

  • SEC({{number}}) gibt den Sekans von number zurück.

  • SECH({{number}}) gibt den Sekans hyperbolicus von number zurück.

  • TAN({{number}}) gibt den Tangens von number zurück.

  • TANH({{number}}) gibt den Tangens hyperbolicus von number zurück.

  • ASIN({{number}}) gibt den Arkussinus von number zurück.

  • ASINH({{number}}) gibt den Arkussinus hyperbolicus von number zurück.

  • ACOS({{number}}) gibt den Arkuskosinus von number zurück.

  • ACOSH({{number}}) gibt den Arkuskosinus hyperbolicus von number zurück.

  • ACOT({{number}}) gibt den Arkuskotangens von number zurück.

  • ACOTH({{number}}) gibt den Arkuskotangens hyperbolicus von number zurück.

  • ATAN({{number}}) gibt den Arkustanges von number zurück.

  • ATANH({{number}}) gibt den Arkustanges hyperbolicus von number zurück.

Logarithmusfunktionen

  • LN({{number}}) gibt den natürlichen Logarithmus von number zurück.

  • LOG({{number}}, {{basis}}) gibt den Logarithmus von number zur Basis basis zurück. Wenn der Parameter basis nicht übergeben wird, ist die Standardbasis 10.

  • LOG10({{number}}) gibt den Logarithmus von number zur Basis 10 zurück.

Zufallszahlen

  • RAND() gibt eine zufällige Dezimalzahl zwischen 0 und 1 zurück.

  • RANDBETWEEN({{num1}},{{num2}}) gibt eine zufällige ganze Zahl zwischen num1 und num2 zurück.

Finanzformeln

Einige häufig verwendete Variablen in den Finanzformeln

Variable

Bedeutung

Zzr

bezeichnet die Anzahl der Zahlungsperioden bzw. die Gesamtanzahl der
Zahlungsperioden

Perioden

bezeichnet die Anzahl der Perioden eines Jahres

Bw

bezeichnet den Barwert / Gegenwartswert einer Investition

Zw

bezeichnet den Zukunftswert einer Investition

F

gibt an, ob Zahlungen am Ende (F = 0) oder am Anfang (F = 1) einer Periode fällig werden

Zr

bezeichnet eine Periode, wenn eine bestimmte Periode betrachtet wird. Der Wert kann
nur zwischen 1 und {{Zzr}} liegen

PMT

bezeichnet eine Zahlung, die in jeder Periode erfolgt

Weitere Variablen werden mit der jeweiligen Formel erläutert.

  • ACCRINT({{Emission}}, {{Erster_Zinstermin}}, {{Abrechnung}}, {{Satz}}, {{Nennwert}}, {{Häufigkeit}}, {{[Basis]}}, {{[Berechnungsmethode]}}) gibt die Stückzinsen eines Wertpapiers mit periodischen Zinszahlungen zurück. {{Emission}} gibt das Emissionsdatum des Wertpapiers an. {{Abrechnung}} gibt das Daum an, an dem das Wertpapier in den Besitz des Käufers übergeht. Häufigkeit bezeichnet die Zinszahlungen pro Jahr.

  • CUMPINT({{Zins}}, {{Zzr}}, {{BW}}, {{Zeitraum_Anfang}}, {{Zeitraum_Ende}}, {{F}}) gibt die kumulierten Zinsen, die zwischen zwei Perioden zu zahlen sind, zurück.

  • CUMPRINC({{Zins}}, {{Zzr}}, {{BW}}, {{Zeitraum_Anfang}}, {{Zeitraum_Ende}}, {{F}}) gibt die kumulierte Tilgung eines Darlehens zwischen zwei Perioden zurück.

  • DB({{Ansch_Wert}}, {{Restwert}}, {{Nutzungsdauer}}, {{Periode}}, {{[Monate]}}) gibt die geometrisch-degressive Abschreibung zurück. Ansch_Wert bezeichnet die Anschaffungskosten. Periode beschreibt die Periode, für den der Abschreibungsbetrag berechnet werden soll; für diese Periode muss die gleiche Zeiteinheit wie für die Nutzungsdauer verwendet werden.

  • DDB({{Ansch_Wert}}, {{Restwert}}, {{Nutzungsdauer}}, {{Periode}}, {{[Faktor]}}) gibt die Abschreibung nach der Doppelraten-Abschreibung zurück. Die benötigten Variablen sind dieselben wie in der Formel DB.

  • DOLLARDE({{Zahl}}, {{Teiler}}) wandelt eine Zahl, die durch eine ganze Zahl und einem Dezimalbruch dargestellt wird, in eine Dezimalzahl um. Beispiel: Die Formel DOLLARDE(1.02,16) gibt den Wert 1,125 (1 + 2/16) zurück.

  • DOLLARFR({{Zahl}}, {{Teiler}}) wandelt eine Dezimalzahl in einen Wert um, die aus einer ganzen Zahl und einem Dezimalbruch besteht, um. Beispiel: Die Formel DOLLARFR(1.125,16) gibt den Wert 1,02 zurück.

  • EFFECT({{Nominalzins}}, {{Perioden}}) gibt die jährliche Effektivverzinsung zurück.

  • FV({{Zins}}, {{ZZr}}, {{Rmz}}, {{[Bw]}}, {{[F]}}) gibt den Zukunftswert einer Investition zurück.

  • FVSCHEDULE({{Kapital}}, {{Zinsen}}) gibt den Zukunftswert einer Investition bei sich änderndem Zinssatz zurück. Die Variable Zinsen muss als Liste angegeben werden.

  • IPMT({{Zins}}, {{Zr}}, {{Zzr}}, {{Bw}}, {{[Zw]}}, {{[F]}}) gibt die Zinszahlung einer Investition für die angegebene Periode zurück.

  • IRR([{{zahlung1}}, {{zahlung2}}, ...], {{schätzer}}) ermittelt den internen Zinsfuß einer Zahlungsreihe. schätzer ist ein Schätzwert, für den internen Zinsfuß. Je näher der Schätzwert am tatsächlichen Zinsfuß ist, desto genauer kann die Formel den internen Zinsfuß berechnen. In den meisten Fällen ist 0.1 (10%) ein ausreichend guter Schätzwert.

  • ISPMT({{Rate}}, {{Per}}, {{Nper}}, {{Bw}}) gibt die Zinsen für einen bestimmten Zeitraum bei konstantem Zinssatz und konstanten Zahlungen zurück.

  • MIRR({{Werte}}, {{Investition}}, {{Reinvestition}}) gibt den geänderten internen Zinssatz für eine Reihe von periodischen Cashflows zurück. Werte wird als Liste übergeben. Investition ist der Zinssatz, den Sie für gezahlte Gelder ansetzen, Reinvestition ist der Zinssatz, den Sie für reinvestierte Gelder erzielen.

  • NOMINAL({{Effektiver_Zins}}, {{Perioden}}) gibt den jährlichen Nominalzinssatz zurück.

  • NPER({{Zins}}, {{Rmz}}, {{Bw}}, {{[Zw]}}, {{[F]}}) gibt die Anzahl der Zahlungsperioden einer Investition zurück.

  • NPV({{zins}}, {{zahlung1}}, {{zahlung2}}, ...) ermittelt den Net Present Value (Nettobarwert) einer Investition. Dazu werden die Zahlungen kontinuierlich mit dem Zinssatz zins abgezinst.

  • PDURATION({{rate}}, {{presentValue}}, {{futureValue}}) gibt Ihnen die Anzahl der Perioden zurück, die eine Investition benötigt, um den Wert futureValue zu erreichen, wobei presentValue den aktuellen Wert der Investition und rate den Zinssatz der Investition bezeichnet.

  • PMT({{rate}}, {{payments}}, {{presentValue}}) gibt Ihnen die Höhe der Zahlung für ein Darlehen zurück, das auf konstanten Zahlungen und einem konstanten Zinssatz basiert. Dabei wist rate der Zinssatz und payments die Anzahl der Zahlungen. presentValue entspricht dem Darlehensbetrag.

  • PPMT({{Zins}}, {{Zr}}, {{ZZr}}, {{Bw}}, {{[Zw}}, {{[F]}}) gibt die Kapitalrückzahlung einer Investition für eine bestimmte Periode zurück.

  • PV({{Zins}}, {{Zzr}}, {{pmt}}, {{[Zw]}}, {{[F]}} gibt den Barwert einer Investition zurück.

  • RATE({{Zzr}}, {{Rmz}}, {{Bw}}, {{[Zw]}}, {{[F]}}, {{[Schätzwert]}}) gibt den Zinssatz pro Periode einer Annuität zurück.

Konvertierung in andere Zahlensysteme

Die Formeln zum Konvertieren in andere Zahlensysteme sind alle gleich aufgebaut: XXX2YYY({{number}}). Dabei steht XXX für das ursprüngliche Zahlensystem und YYY für das Zielzahlensystem. In der folgenden Tabelle sind die Abkürzungen und Zahlenräume der jeweiligen Zahlensysteme aufgeführt. Beispiel: BIN2DEC({{number}}) konvertiert number vom binären Zahlensystem in das dezimale Zahlensystem.

Zahlensystem

Abkürzung

Verwendbare Zeichen

Binär

BIN

0-1

Dezimal

DEC

0-9

Hexadezimal

HEX

0-F

Oktal

OCT

0-7

Darüber hinaus gibt es noch weitere Formeln, mit denen Sie Zahlen in beliebige Zahlensysteme konvertiert werden können.

  • BASE({{number}}, {{base}}) konvertiert eine Dezimalzahl number in das Zahlensystem mit der Basis base.

  • DECIMAL({{zeichenkette}}, {{base}}) konvertiert eine Zeichenkette mit der Basis base in das Dezimalsystem.

Das bedeutet, dass die Formel DECIMAL('101',2) den gleichen Effekt hat wie die Formel BIN2DEC(101).

Statistikformeln

Grundlagen

  • AVERAGE({{num1}}, {{num2}}, ...) gibt das arithmetische Mittel aller numerischen Werte zurück.

  • AVERAGEA({{num1}}, {{num2}}, ...) gibt den Mittelwert aller übergebenen Werte zurück. Logische Werte und Texte werden nicht ignoriert.

  • AVERAGEIF({{Bereich}}, {{Kriterien}}, {{[Mittelwert_Bereich]}}) gibt das arithmetische Mittel aller übergebenen Werte zurück, die einem Kriterium entsprechen.

  • AVERAGEIFS({{Mittelwert_Bereich}}, {{Kriterien_Bereich1}}, {{Kriterien1}}, {{Kriterien_Bereich2}}, {{Kriterien2}}, ...) gibt den Mittelwert aller übergebenen Werte zurück, die den angegebenen Kriterien entsprechen.

  • MEDIAN({{num1}}, {{num2}}, ...) gibt den Median aller numerischen Werte zurück.

  • COUNT({{num1}}, {{num2}}, ....) gibt die Anzahl der numerischen Werte zurück. Beispiel: COUNT(2,3,'test',4) gibt Rückgabewert 3 zurück.

  • COUNTIF({{Bereich}}, {{Kriterien}}) gibt die Anzahl der numerischen Werte in einer Liste zurück, die einem Kriterium entsprechen.

  • COUNTIFS({{Kriterien_Bereich1}}, {{Kriterien1}}, {{Kriterien_Bereich2}}, {{Kriterien2}}, ...) gibt die Anzahl der numerischen Werte in einer Liste zurück, die mehreren Kriterien entsprechen.

  • LARGE([{{num1}}, {{num2}}, ...], {{k}}) gibt die k-größte Zahl zurück. Beispiel: LARGE([2,3,5],2) gibt die zweitgrößte Zahl zurück: 3.

  • SMALL([{{num1}}, {{num2}}, ...], {{k}}) gibt die k-kleinste Zahl zurück.

Beispiele für Formeln

Wie berechne ich ein Schaltjahr?

Um zu berechnen, ob ein bestimmtes Jahr ein Schaltjahr ist, gibt es dafür keine vordefinierte Formel. Sie können sich diese Formel jedoch selbst schreiben. Zunächst benötigen Sie in Ihrem Formular ein Nummerneingabefeld. In dieses Feld können Sie später in GBTEC Work Orchestrator das zu prüfende Jahr eingeben. In diesem Beispiel haben wir diese Prozessvariable year genannt.

Nun verwenden Sie die folgende Formel:

In dieser Abbildung ist die Formel zur Berechnung eines Schaltjahres eingefügt: EXACT(MONTH(DATE({{year}},02,29)),2)

Wie Sie sehen, besteht die Formel aus mehreren Formeln. Zunächst wird mit DATE({{year}},02,29) ein gültiges Ergebnis im datetime-Format erstellt. Abhängig vom gewählten Jahr entspricht dies dem 29. Februar des jeweiligen Jahres (wenn es sich um ein Schaltjahr handelt) oder dem 01. März (wenn es sich nicht um ein Schaltjahr handelt).

Anschließend wird der Monat des Datums mit der Formel MONTH extrahiert. Dieser ist, wie bereits erläutert, 2 (im Falle eines Schaltjahres) oder 3 (im Falle eines regulären Jahres).

Als letzter Schritt wird die Textvergleichsformel EXACT verwendet. Diese gibt TRUE zurück, wenn der Monat mit 2 übereinstimmt, und FALSE, wenn nicht. Damit erhalten Sie ein Ergebnis, mit dem Sie feststellen können, ob ein Jahr ein Schaltjahr ist oder nicht.

In GBTEC Work Orchestrator sieht das dann wie folgt aus:

Diese Abbildung zeigt die Userform und wie sie den Wert falsch zurückgibt.

Diese Abbildung zeigt die Userform und wie sie den Wert true zurückgibt.

Wie berechne ich Werktage?

Nachfolgend finden Sie ein Beispiel für die Verwendung von Formeln, mit denen unter anderem die Anzahl der Werktage berechnet werden kann.

Als Beispiel hierzu dient eine Projektplanung. Es soll ermittelt werden, wie viele Arbeitsstunden zur Verfügung stehen.

Dieses Beispiel ist bewusst einfach gehalten und berücksichtigt daher nicht alle Prozesse und Rechenschritte. Es soll lediglich einen Überblick verschaffen, was mit Formeln möglich ist.

Zunächst werden Eingabefelder verwendet, mit denen die Rahmendaten des Projekts festgelegt werden. In diesem Beispiel beschränken wir uns auf das jeweilige Start- und Enddatum, die Anzahl der beteiligten Mitarbeiter und deren jeweilige durchschnittliche tägliche Arbeitszeit im Projekt.

Diese Abbildung zeigt die benötigten Eingabefelder für unser Formular.

Das Start- und Enddatum sind Datumseingabefelder. Die Felder für die Anzahl an Mitarbeiter und deren jeweilige Arbeitsleistung sind vom Typ Nummernfeld. Die IDs der jeweiligen Felder lauten im Beispiel wie folgt:

  • Startdatum: start

  • Enddatum: end

  • Anzahl der Mitarbeiter: people

  • Anzahl der Arbeitsstunden: hours

Mit diesen Werten können nun weitere Berechnungen durchgeführt werden:

Diese Abbildung zeigt wie die Formeln aufgebaut sind, welche uns zu unserem Ergebnis verhelfen.

Zunächst werden die Werktage workDays berechnet. Dies geschieht mit der Formel NETWORKDAYS, die hier näher beschrieben wird.

Anschließend wird die verfügbare Arbeitskraft pro Tag workPower berechnet, indem die durchschnittliche Stundenzahl mit der Anzahl der beteiligten Personen multipliziert wird.

Zuletzt wird die Gesamtkapazität des Projekts berechnet. Dazu wird die Anzahl der Werktage mit der pro Tag verfügbaren Arbeitskraft multipliziert.

Wenn dieser Vorgang nun in GBTEC Work Orchestrator gestartet wird, sieht unser Formular (gefüllt mit Beispielwerten) wie folgt aus. Die drei berechneten Werte aktualisieren sich dabei automatisch, sobald die anderen Eingabefelder geändert werden.

Diese Abbildung zeigt die erstellte Userform und wie Sie mit Beispieldaten gefüllt ist.

Bemerkung

Wenn bei der Eingabe einer Formel eine Fehlermeldung auftritt, kann das Problem mit der Datumsfunktion zusammenhängen. In diesem Fall kann der Fehler durch die Verwendung von .toISOString() wie im folgenden Beispiel WORKDAY({{createdDate}}, 10).toISOString() behoben werden.

Dynamische Formulare erstellen

Mit Formeln können Sie Ihre Formulare auch dynamisch gestalten. Das bedeutet, dass sich die Eigenschaften der Formularfeldern in Abhängigkeit von den Benutzereingaben ändert. In diesem Beispiel gehen wir von einem Versicherungsunternehmen aus, das Autoversicherungen verkauft. Dazu sieht unser Formular im Formular-Editor zunächst wie folgt aus:

Diese Abbildung zeigt aus welchen Eingabefeldern das Formular besteht.

Bemerkung

Wenn bei der Eingabe einer Formel eine Fehlermeldung auftritt, kann das Problem mit der Datumsfunktion zusammenhängen. In diesem Fall kann der Fehler durch die Verwendung von .toISOString() wie im folgenden Beispiel WORKDAY({{createdDate}}, 10).toISOString() behoben werden.

Der Name des Erziehungsberechtigten wird jedoch nur benötigt, wenn die zu versichernde Person jünger als 21 Jahre ist. Deshalb wird für das Attribut Versteckt die Option bedingt gewählt. Hier kann nun die Bedingung eingetragen werden, dass das Alter größer oder gleich 21 sein muss. Das heißt, ist die Person mindestens 21 Jahre alt, wird dieses Feld versteckt. Ist die zu versichernde Person jünger als 21 Jahre, ist die Angabe ein Pflichtfeld.

Diese Abbildung zeigt die Details des Formularfeldes "Name des Erziehungsberechtigten".

Das Attribut Schreibgeschützt bietet Ihnen eine weitere Möglichkeit, Ihre Formulare dynamisch zu gestalten. Die folgende Abbildung zeigt ein Formularfeld vom Typ Boolean, welches verwendet wird, um anzugeben, ob es sich bei der Versicherung um eine Vollkaskoversicherung handelt. In diesem Fall ist das Feld schreibgeschützt, wenn die zu versichernde Person jünger als 25 Jahre ist. Das bedeutet, wenn die Person jünger als 25 Jahre ist, kann dieses Formularfeld nicht geändert werden. Die Erstellung einer Vollkaskoversicherung ist somit nur für Personen über 25 Jahre möglich.

Diese Abbildung zeigt die Details des Formularfeldes "Vollkasko".

In GBTEC Work Orchestrator ist es möglich, diesen Vorgang zu starten und sich das Formular anzeigen zu lassen. Hier sehen Sie, dass das Feld Vollkasko nicht bearbeitbar ist, da die zu versichernde Person jünger als 25 Jahre ist. Da die Person jedoch älter als 21 Jahre ist, ist das Feld für den Namen des Erziehungsberechtigten versteckt.

Diese Abbildung zeigt das Formular in GBTEC Work Orchestrator.