Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core für Entwickler > agorum core workflow 3.0
Mit dem mitgelieferten Skript start-workflow.js starten Sie für jedes Dokument, das in einem Aktiven Ordner abgelegt wird, automatisch einen Workflow von Automation | Workflow. Ein eigenes Skript ist dafür nicht nötig. Sie richten dazu im Aktiven Ordner die Konfiguration Skript ausführen ein und übergeben dem Skript den Namen Ihres Workflows als Parameter.
Bevor Sie einen Aktiven Ordner mit dem Skript start-workflow.js verbinden, müssen folgende Punkte erfüllt sein:
doc.test.startworkflow.Das Skript start-workflow.js übergibt jedes Dokument eines Aktiven Ordners einzeln an einen Workflow von Automation | Workflow. Damit das funktioniert, muss der Workflow zwei Bedingungen erfüllen.
Das Skript startet den Workflow mit dem Dokument als Anhang. Im Workflow steht das Dokument in der internen Variable sys_acw_attachments zur Verfügung, siehe Interne Workflow-Variablen verwenden.
Der Workflow muss das Dokument aus dem Aktiven Ordner verschieben, bevor er zum ersten Mal wartet, etwa auf eine Benutzeraktion oder einen Termin, oder bis zum ersten Commit-Knoten. Bis dahin läuft der Workflow in derselben Transaktion, in der das Skript ihn gestartet hat. Zu Transaktionen in Workflows siehe Transaktionen und Fehlerbehandlung in Workflows.
Liegt das Dokument nach dem Start noch im Aktiven Ordner, bricht das Skript ab. Ohne diese Prüfung würde der Aktive Ordner für dasselbe Dokument jede Minute einen weiteren Workflow starten.
Achtung: Verschiebt der Workflow das Dokument nicht, bricht das Skript den Durchlauf mit der Fehlermeldung Workflow <Name> failed to move object <ID> from folder <ID>. This is required to prevent an infinite loop. ab. Das Dokument bleibt im Aktiven Ordner, und weitere Dokumente dieses Durchlaufs werden nicht mehr verarbeitet. Prüfen Sie in diesem Fall die Workflowdefinition.
In diesem Abschnitt verbinden Sie einen Ordner mit dem mitgelieferten Skript start-workflow.js von Automation | Workflow. Wie Aktive Ordner grundsätzlich funktionieren, beschreibt Aktiven Ordner einrichten.
Voraussetzung: Der Ordner, den das System überwachen soll, existiert, und der Workflow ist wie unter Workflow für den Start aus einem aktiven Ordner vorbereiten eingerichtet.
Gehen Sie wie folgt vor, um den Aktiven Ordner einzurichten:
/agorum/roi/customers/acworkflow/js/tools/start-workflow.js
workflow ein und bestätigen Sie mit OK.Das Skript start-workflow.js von Automation | Workflow liest die folgenden Parameter, die Sie in der Konfiguration Skript ausführen eines Aktiven Ordners setzen. Alle Werte tragen Sie als Text ein.
| Parameter | Pflicht | Standard | Beschreibung |
|---|---|---|---|
workflow |
ja | – | Vollständiger Name des Workflows, den das Skript für jedes Dokument startet. Fehlt der Parameter, bricht das Skript mit der Meldung Missing parameter "workflow" ab. |
selector |
nein | [!isFolder] |
Selektor, der festlegt, für welche Objekte das Skript einen Workflow startet. Der Standard wählt alle Objekte außer Ordnern. Beispiel: [nameExtension=/pdf/i] für PDF-Dateien. Zur Schreibweise siehe Selektoren. |
minimumAge |
nein | 30 |
Mindestalter in Sekunden. Das Skript übergeht Objekte, deren Inhalt in dieser Zeit geändert wurde. Bei Objekten ohne Inhalt zählt die letzte Änderung. Beginnt der Wert nicht mit einer ganzen Zahl, gilt der Standard. |
recursive |
nein | – | Mit dem Wert true verarbeitet das Skript auch die Objekte in Unterordnern. Ohne den Parameter oder mit einem anderen Wert bleiben Unterordner unberücksichtigt. |
Ein Aktiver Ordner mit dem Skript start-workflow.js von Automation | Workflow läuft jede Minute. Bei jedem Durchlauf geht das Skript die Objekte im Ordner durch:
selector passen.minimumAge. Diese Objekte verarbeitet es in einem späteren Durchlauf.recursive den Wert true hat.