Die integrierte Workflow Engine ist eine Basiskomponente in Cameleon. Jedes Modul, das im Modul Designer erstellt wird, besitzt einen oder mehrere Workflows. Damit bietet die Applikation flexible Anpassungsmöglichkeiten bei der Abbildung Ihrer Unternehmensprozesse.
Workflows
Jeder Datensatz in Cameleon referenziert auf einen Workflow. In einem Workflow werden sämtliche Aktionen, die in einem Datensatz ausgeführt werden sollen, hinterlegt. Ein Workflow besteht aus Phasen und Übergängen.
Die UUID des Workflows wird in dem Feld servicemodel eines Datensatzes gespeichert Die UUID der aktuellen Phase wird in dem Feld phase eines Datensatzes gespeichert
Einen Workflow erstellen
- Öffnen Sie im Hauptmenü “Workflow Engine” > Workflows
- Klicken Sie auf den Button “Neu”
- Füllen Sie die erforderlichen Felder aus
- Klicken Sie auf den Button “Hinzufügen”, um das Konfigurationselement zu erstellen
Einen Workflow bearbeiten
- Öffnen Sie im Hauptmenü “Workflow Engine” > Workflows
- Wählen Sie das Modul aus, in dem der Workflow verwendet wird
- Wählen Sie das gewünschte Element aus der Liste aus
- Führen Sie die gewünschte Änderung durch und klicken Sie anschließend auf “Speichern”
Workflow
Phasen und Übergänge eines Workflows können per Drag&Drop-Funktion bearbeitet werden.
Neue Phase erstellen | Mit dieser Option können Sie eine neue Phase erstellen |
Aktuelle Phase löschen | Mit dieser Option können Sie die aktuell ausgewählte Phase löschen |
Neuen Übergang erstellen | Mit dieser Option können Sie einen neuen Übergang von der aktuell ausgewählten zu einer anderen Phase erstellen |
Globale Workflow-Aktionen | Ist diese Option aktiv, können Sie die globalen Aktionen definieren, die in jeder Phase ausgeführt werden sollen |
Phaseneigenschaften
Die Eigenschaften einer Phase können über das Bleistift-Symbol geöffnet werden, wenn Sie sich mit dem Mauszeiger auf der gewünschten Phase befinden.
Anzeigelabel | Das Anzeigelabel der Phase je nach Systemsprache |
Erste Phase | Diese Phase ist bei neuen Datensätzen standardmäßig die erste Phase. Hinweis: Eine Phase muss als erste Phase markiert werden |
Rollenbasiertes Formular in dieser Phase | Pro Rolle kann definiert werden, welches Formular in dieser Phase angezeigt werden soll. Hinweis: Ist kein Formular ausgewählt, wird das Standardformular des Moduls verwendet |
Übergangseigenschaften
Die Eigenschaften eines Übergangs können mit einem Mausklick auf den Verbindungspfeil zwischen zwei Phasen geöffnet werden.
Typ des Phasenübergangs | Manuell oder automatisch Manuelle Phasenübergänge können mit einem Button manuell ausgelöst werden. Automatische Übergänge werden automatisch ausgelöst, wenn die Bedingung zutrifft |
Label des Buttons | Nur bei manuellen Übergängen Das Label des Buttons je nach Systemsprache |
Bedingung des Phasenübergangs | Bedingung, unter der der Übergang ausgeführt wird Hinweis: Mit der Notation record.<Feldname> kann auf Informationen des aktuellen Datensatzes zugegriffen werden |
Aktionszeitpunkte
Aktionen werden in der Liste von oben nach unten ausgeführt. Zuerst werden globale und anschließend phasenspezifische Aktionen ausgeführt. Über eine Bedingung kann zeilenweise definiert werden, ob die Aktion gestartet werden soll. Aktionen können zu folgenden Zeitpunkten oder Ereignissen gestartet werden.
Vor dem Hinzufügen | Nur bei der initialen Phase Unmittelbar vor dem Erstellen eines Datensatzes in der Datenbank werden die Aktionen ausgeführt |
Nach dem Hinzufügen | Nur bei der initialen Phase Unmittelbar nach dem Erstellen eines Datensatzes in der Datenbank werden die Aktionen ausgeführt |
Bei Phaseneintritt | Wechselt ein Datensatz in die Phase, werden die Aktionen ausgeführt |
Formularaktionen | Aktionen in diesem Bereich werden nur auf dem Formular ausgeführt, zum Beispiel um Pflichtfelder zu definieren oder Felder unter bestimmten Bedingungen zu füllen Aktionen in diesem Bereich werden bei REST-API Aufrufen ignoriert |
Unmittelbar vor dem Speichern in die Datenbank | Unmittelbar bevor der Datensatz aktualisiert wird. Datenänderungen, die von Aktionen in diesem Bereich ausgelöst wurden, werden in die Datenbank geschrieben |
Unmittelbar nach dem Speichern in die Datenbank | Unmittelbar nach dem Speichern des Datensatzes in der Datenbank werden diese Aktionen ausgelöst. Dieser Bereich kann zum Beispiel für den Aufruf von REST-APIs oder Aktionen verwendet werden, um andere Datensätze zu aktualisieren |
Beim Verlassen der Phase | Verlässt der Datensatz die Phase, werden Aktionen in diesem Bereich ausgeführt |
Folgende Objekte stehen in den Bedingungen zur Verfügung:
client | Die Konstante enthält die ID des Clients |
user | Die Konstante enthält die UUID des angemeldeten Benutzers |
record | Das Objekt enthält Daten des aktuellen Datensatzes |
oldrecord | Das Objekt enthält Daten des Datensatzes unmittelbar vor der durchgeführten Änderung. |
custom | Das Objekt enthält globale Systemparameter, die in den Einstellungen des Systems hinterlegt werden können. |
temp | Ein temporäres Objekt, das individuell und aktionsübergreifend verwendet werden kann. Beispiel: temp.information = “Eine Information” |
Details
Hersteller | Ist dieser Parameter aktiv, handelt es sich um einen Konfigurationsdatensatz, der durch den Softwarehersteller im Standard ausgeliefert wurde Hinweis: Bei Konfigurationsdatensätzen vom Hersteller können nur Anzeigelabel und der Verwendungsstatus aktualisiert werden. Diese Datensätze können nicht gelöscht werden |
Version | Die Version des Konfigurationsdatensatzes |
Anzeigelabel | Ein Label des Workflows je Systemsprache |
Name | Der technische Name des Konfigurationsdatensatzes |
Beschreibung | Eine Beschreibung des Workflows |
Verwendet in | Modul, in dem der Konfigurationsdatensatz verwendet wird |
In Verwendung | Verwendungsstatus des Konfigurationsdatensatzes |
Erstellt am | Das Erstellungsdatum des Konfigurationsdatensatzes Hinweis: Das Feld wird automatisch gefüllt |
Aktualisiert am | Das Datum, an dem der Konfigurationsdatensatz zuletzt aktualisiert wurde Hinweis: Das Feld wird automatisch gefüllt |
UUID | Eine eindeutige ID des Konfigurationsdatensatzes Hinweis: Das Feld wird automatisch gefüllt |
Erstellt von | Der Ersteller des Konfigurationsdatensatzes Hinweis: Das Feld wird automatisch gefüllt |
Aktualisiert von | Die Person, die den Konfigurationsdatensatz zuletzt aktualisiert hat Hinweis: Das Feld wird automatisch gefüllt |