Aufbau von Arbeitsabläufen
Ein Arbeitsablauf ist eine Abfolge von Aufgaben, die nach einer fest vorgegebenen Struktur abgearbeitet werden. Für die jeweiligen Aufgaben können in FirstSpirit sowohl Fälligkeitszeitpunkte als auch berechtigte Personengruppen festgelegt werden.
Über einen grafischen Editor können projektspezifische Arbeitsabläufe erstellt werden. Instanzen dieser Arbeitsabläufe können anschließend kontextgebunden auf jedem Element innerhalb des FirstSpirit-Projekts oder kontextlos über die FirstSpirit-Menüleiste gestartet werden (zur Unterscheidung zwischen „kontextfrei“ und „kontextbezogen“ siehe unten). Jede Instanz eines Arbeitsablaufs muss entsprechend der im Arbeitsablauf festgelegten Regeln durchlaufen werden.
Übersicht über offene Arbeitsabläufe
Auf dem Wurzelknoten „Arbeitsabläufe“ in der Vorlagen-Verwaltung befindet sich eine Übersicht über alle offenen Arbeitsabläufe (Instanzen) innerhalb des Projekts, wobei eine gefilterte Ansicht abhängig von verschiedenen Suchkriterien ebenfalls möglich ist. Innerhalb der Übersicht können Aufgaben bearbeitet und wieder geschlossen werden.
Vorlagen-Register
Für jeden Arbeitsablauf befinden sich im Arbeitsbereich des SiteArchitect verschiedene Register, in denen alle benötigten Einstellungen und Definitionen zur Modellierung eines Arbeitsablaufs vorgenommen werden können:
- Register Eigenschaften: Es werden für den Arbeitsablauf gültige Einstellungen festgelegt.
- Register Zustandsdiagramm: Über einen grafischen Editor kann ein Arbeitsablauf modelliert werden. In diesem Kapitel werden auch wichtige Regeln für das Modellieren von Arbeitsabläufen aufgezeigt.
- Register Formular: Hier werden Eingabekomponenten für Eingaben innerhalb von Arbeitsabläufen definiert.
- Register Regeln: Durch die Definition von Regeln können Elemente oder Eigenschaften beeinflusst werden.
- Register Schnipsel: Hier kann die Darstellung des Arbeitsablaufs in Übersichtslisten bestimmt werden.
Weiterführende Themen
In den weiteren Kapiteln wird das Vorgehen bei der Verwendung von Arbeitsabläufen beschrieben.
- Schreibschutz: Ein Schreibschutz kann auf Objekte gesetzt werden, die sich in einem Arbeitsablauf befinden und nicht bearbeitet werden sollen.
- Fehlerbehandlung: Um eventuelle Fehler zuverlässig abzufangen und zu verhindern, dass sich eine Instanz des Arbeitsablaufs nach dem Schalten einer Transition in einem inkonsistenten Zustand befindet, steht ein optionaler Fehler-Status innerhalb der Modellierung von Arbeitsabläufen zur Verfügung.
- Verwendung von Skripten: Skripte ermöglichen die Umsetzung von komplexen Funktionalitäten in einem Projekt.
- Programmatische Verwendung: Das Starten und Schalten eines Arbeitsablaufs ist auch über die FirstSpirit-Access-API möglich, somit können Arbeitsabläufe auch aus Skripten in FirstSpirit-Clients als auch innerhalb von Aufträgen und aus Komponenten von FirstSpirit-Modulen heraus gestartet und weitergeschaltet werden.
- Löschen über Arbeitsabläufe: Es kann ein projektspezifischer Arbeitsablauf erstellt und im SiteArchitect direkt an die Bedienelemente zum Löschen von Elementen und im ContentCreator an das Menü „Inhalte / Löschen“ gebunden werden.
- Rechtekonfiguration: Welcher Benutzer welchen Arbeitsablaufschritt ausführen darf, kann sehr flexibel und sehr feingranular in FirstSpirit definiert werden. Damit ein Arbeitsablauf überhaupt gestartet werden kann, müssen passende Rechte für die Transition definiert worden sein. Für kontextabhängige Arbeitsabläufe ist es darüber hinaus erforderlich, dass auf dem Knoten / Teilbaum / der Verwaltung, auf dem/der der Arbeitsablauf ausgeführt werden können soll, ebenfalls entsprechende Rechte erteilt wurden.
Weitere Informationen zu Arbeitsablaufrechten siehe Arbeitsablauf-Rechte (→Handbuch FirstSpirit SiteArchitect). - Im Kapitel Tutorials finden sich weitere Informationen zum Erstellen von Arbeitsabläufen.
Integrierte Arbeitsabläufe
In FirstSpirit gibt es zwei integrierte Arbeitsabläufe:
- Freigabe anfordern: Ein Integrierter Arbeitsablauf für die Freigabe von Objekten. Es handelt sich um einen kontextbezogenen Arbeitsablauf, der an ein bestimmtes Objekt gebunden ist und daher immer in Bezug auf dieses Objekt gestartet und ausgeführt werden muss.
- Aufgabe: Ein integrierter Arbeitsablauf zum Zuweisen von Aufgaben. Es handelt sich um einen kontextfreien Arbeitsablauf, der nicht an ein bestimmtes Objekt gebunden ist und daher „ohne Kontext“, also ohne Bezug zu einem Objekt gestartet werden kann.
Zugriff über die FirstSpirit-API
Der Zugriff auf Arbeitsabläufe über die FirstSpirit-API kann über folgende Einstiegspunkte erfolgen:
- Access-API:
- Paket de.espirit.firstspirit.workflow.model
- Paket de.espirit.firstspirit.access.store.templatestore, Interface Workflow
- Paket de.espirit.firstspirit.access.store.templatestore, Interface WorkflowContainer
- Paket de.espirit.firstspirit.access.store.templatestore, Interface WorkflowFolder
- Paket de.espirit.firstspirit.access.store.templatestore, Interface WorkflowPermission
- Paket de.espirit.firstspirit.access.store.templatestore, Interface WorkflowScriptContext
- Paket de.espirit.firstspirit.access.store.templatestore, Interface WorkflowTransitionPermission
- Paket de.espirit.firstspirit.workflow
- Paket de.espirit.firstspirit.workflow, Interface WorkflowAgent