Skip to content

Kitodo‐Workflow Neu

Christoph Bartmann edited this page Jun 12, 2025 · 25 revisions

Grundsätzliches

Jeder Vorgang in Kitodo wird auf Basis einer allgemeinen Workflow-Definition erzeugt, welche die einzelenen Prozessschritte festlegt. Ein Workflow in Kitodo legt dementsprechend die manuell oder automatisch für einen Vorgang abzuarbeitenden Aufgaben fest. Bevor in Kitodo Projekte und Produktionsvorlage angelegt werden können, muss zunächst immer ein Workflow angelegt werden. [Link zur Übersicht]

Die Anlage eines neuen und die Bearbeitung eines existierenden Workflows erfolgen im Workflow-Editor.

image

Ein Workflow ist dabei immer eine Abfolge von Prozesschritten und hat einen Start- und einen Endpunkt.

Funktionalität des Workflow-Editors

Für jeden Workflow-Schritt in Kitodo sind grundsätzliche Eigenschaften festzulegen.

  1. Ein Workflow-Schritt kann grundsätzlich

a) als manuelle Task

image

b) als Skript-Task (erkennbar an dem kleinen Icon im Workflow-Schritt)

image

definiert werden. Manuelle Tasks/Workflow-Schritte erfordern eine Aktion des Benutzers, z.B. die Struktuierung eines Objekts. Automatische Workflow-Schritte definieren eine automatisch ablaufende Aktion (i.d.R. ein Shell-Script oder eine Kitodo-Action)

Weitere Eigenschaften einer Aufgabe werden im rechten Bildbereich festgelegt.

image

Neben dem Namen der Aufgabe sind dies die folgenden Attribute ("Aufgaben Eigenschaften"/"Task Properties"), die in aller Regel zwei Zustände haben (aktiviert/deaktiviert)

Task Property Erläuterung
Korrektur/Correction Aufgaben mit aktivierter "Correction" werden im Rahmen eines Korrekturlaufs [?] erneut wiederholt. Sollte z.B. im Rahmen der Qualitässicherung ein Fehler auffallen, so kann für den vorangehenden Schritt "Strukturierung" festgelegt werden, ob dieser wiederholt werden muss oder im Korrekturlauf übersprungen wird.
Bearbeitungsstatus: Gesperrt, Abgeschlossen ? -> Zustand in dem Vorgang bei Bearbeitung gesetzt wird
Metadaten Hier wird festgelegt, ob Nutzer im Rahmen der Aufgabe den Metadateneditor benutzen können
Bilder lesen Im Rahmen dieser Aufgabe werden Bilder automatisch per Symlink ins Home-Verzeichnis des aktuellen Benutzers verlinkt. Schreibzugriff nur für privilegierte Nutzer
Bilder schreiben Im Rahmen dieser Aufgabe werden Bilder automatisch per Symlink ins Home-Verzeichnis des aktuellen Benutzers verlinkt. Der Nutzer erhält Schreibzugriff
Bilder generieren Im Rahmen der Aufgabe werden Bildderivate generiert, entweder automatisch oder manuell auf Anfrage
Bilder validieren Im Rahmen dieser Aufgabe werden die Bilder eines Vorgangs validiert. (Manuell oder automatisch - Erläuterung); aktuell noch in Entwicklung: https://github.com/kitodo/kitodo-production/pull/6505
Export DMS In der Kitodo-Aufgabe wird die Funktion zum Export des Vorgang in das in den Projekteinstellungen konfigurierte Exportverzeichnis aktiviert.
Beim Abschluss validieren Der Workflow-Schritt lässt sich erst dann abschließen, wenn der Vorgang nach Maßgabe des hinterlegten Rulesets valide ist
Nach dem Annehmen schließen Der Workflow-Schritt wird nach der Übernahme durch den Nutzer nicht in den Zustand "in Bearbeitung versetzt, sondern sofort geschlossen und der nächste Workflow-Schritt gestartet.
Automatisch Der Workflow-Schritt läuft grundsätzlich automatisch und ohne Intervention des Nutzers ab. Beispiele sind Shell-Scripts.
Stapelverarbeitung ? - Unklar
Parallele Aufgabe Der Workflow-Schritt wird parallel zu einem anderen Workflow Schritt ausgeführt. (siehe unten)

Automatische vs. manuelle Aufgaben

Alle Workflow-Schritte können als "automatisch" markiert werden, was bewirkt, dass die mit diesem Schritt verknüpften Funktionen bei Beginn der Aufgabe automatisch gestartet werden. Alle im "automatischen" Workflow-Schritt sind - bei entsprechenden Einstellungen oder im Fall des Scheiterns einer automatischen Aufgabe - allerdings auch manuell aufrufbar.

Dies gilt zunächst für die im Workflow-Editor auswählbaren Aufgaben:

  • Bilder generieren
  • Export DMS
  • Bilder validieren

Wird eine dieser Aufgaben in Kombination mit "Automatisch" ausgewählt, startet bei Beginn der Aufgabe ein automatischer Export der Daten oder eine automatische Generierung, oder eine automatische Validierung der Bilder.

Ist der Workflowschritt manuell, so kann die assoziierte Aufgabe manuell aus dem entsprechenden Task-Menü gestartet werden.

image

Dasselbe gilt, wenn die automatische Prozessierung scheitert. Die automatische Aufgabe kann dann aus dem Task-Menü erneut manuell gestartet werden.

Exkurs: Lesen und Schreiben von Bildern

Die Einstellungen für das "Lesen" und "Schreiben" von Bildern als Attribut einer Workflow-Aufgabe, sind insbesondere für Installationen auf Basis von Samba-Shares (https://github.com/kitodo/kitodo-production/wiki/Installationsanleitung-f%C3%BCr-Kitodo.Production-3.X#7-ldap-f%C3%BCr-samba-vorbereiten) relevant.

Wenn eine der beiden Eigenschaften gesetzt ist, wird bei Annahme der entsprechenden Aufgabe, automatisch ein Symlink vom Home-Verzeichnis des enstprechenden Benutzers auf das Kitodo-Bild-Verzeichnis gesetzt. Der Benutzer kann auf diesem Weg von seinem lokalen Windows-PC auf die Bild-Daten im Kitodo-Verzeichnis zugreifen. Je nach Einstellung (Bilder schreiben) wird der Nutzer als nur leseberechtigz oder schreibberechtigt eingestellt.

Code-Referenz:

https://github.com/kitodo/kitodo-production/blob/99d664e4b42d204b37176bb18d90f96e9d6f3427/Kitodo/src/main/java/org/kitodo/production/services/workflow/WorkflowControllerService.java#L722-L728

Daneben gibt es sowohl aus der Vorgangs- als auch aus der Aufgabenliste die Möglichkeit, Bilder per Symlink in das eigene Home-Verzeichnis zu verlinken. Überprüft wird in diesem Fall die Berechtigung editProcesImage (Images des Vorgangs bearbeiten) siehe https://github.com/kitodo/kitodo-production/wiki/Berechtigungen-und-Rollen-NEU. Der Zugriff auf die Bilder ist dann immer schreibend, es sei denn die Bilder des Vorgangs werden schon im Rahmen einer anderen Aufgabe bearbeitet.

Code-Referenz:

https://github.com/kitodo/kitodo-production/blob/99d664e4b42d204b37176bb18d90f96e9d6f3427/Kitodo/src/main/java/org/kitodo/production/services/data/ProcessService.java#L1960-L1972

Weitere Einstellungen für die Workflow-Schritte

Zwingend auszufüllen ist der Reiter Berechtigungen:

image

Jedem Workflow-Schritt muss mindestens eine Rolle hinzugefügt werden. Verfügbar sind alle auf diesem Client definierte Rollen. Der jeweilige Workflowschritt ist in der Task-Liste nur für solche Rollen sichtbar, für welche die entsprechende Berechtigung gesetzt wurde.

Beispiel: Wird dem Workflow-Schritt "Scannen" nur die Rolle "Scan-Operator" zugewiesen, so sind in der Liste aller aktiven Tasks, die "Scannen"-Tasks nur für Nutzer mit der Rolle "Scan-Operator" sichtbar. Weiterhin kann bei einer gescheiterten automatischen Aufgabe, nur eine für diesen WorkflowSchritt berechtigte Rolle, die Funktion erneut ausführen.

Parallele Workflow-Schritte

Clone this wiki locally