 |
 |
|
|
|
Übertragen
Damit der Workflow ausgeführt werden kann, muss in der Process Engine-Datenbank eine Programmversion der Workflow-Definition existieren. Durch das Speichern einer Workflow-Definition in einem Objektspeicher oder einer Bibliothek wird die Datei gespeichert, aber nicht ausführbar gemacht.
Es gibt mehrere Möglichkeiten für die Übertragung einer Workflow-Definition an die Process Engine-Datenbank:
- Process-Designer
- Sie können eine Workflow-Definition direkt in die Process Engine übertragen, indem Sie den Befehl Datei/Übertragen verwenden.
- Wenn Sie einen Workflow über den Process-Designer starten, überträgt das Dienstprogramm Workflow starten die Workflow-Definition und startet den in den Workflow-Übersichten definierten Prozess.
- FileNet Web Services Client und Open Client
- Wenn Sie eine Verknüpfung zwischen einer Workflow-Definition und einem Dokument oder einer Dokumentklasse erstellen, erfolgt automatisch eine Übertragung, wenn die Version der Workflow-Definition nicht bereits in der Process Engine-Datenbank existiert. Weitere Informationen finden Sie in der Online-Hilfe zu Process Linker.
Im Rahmen der Übertragung wird die Workflow-Definition überprüft. Dabei werden die Definitionen auf Fehler (z. B. eine inkorrekte Ausdruckssyntax oder ungültige Routingbedingungen) hin überprüft. Die Übertragung kann erst durchgeführt werden, wenn Fehler, die während dieser Überprüfung festgestellt wurden, behoben wurden. Außerdem kann die Übertragung nicht abgeschlossen werden, wenn die Programmversion einer Workflow-Definition die Dateigröße von 512 KB (bei Oracle-Datenbanken) bzw. 64 KB (bei Microsoft SQL Server-Datenbanken) überschreitet.
Auf ähnliche Weise müssen die in der Process-Konfigurationskonsole definierte Systemkonfigurationseinstellungen (einschließlich Definitionen für Warteschlangen, Roster und Ereignisprotokolle) in die Workflow-Datenbank übertragen werden. In der Process-Konfigurationskonsole werden durch die Aktion Änderungen übertragen sämtliche ungespeicherten Änderungen übertragen, die in der aktuellen Sitzung der Process-Konfigurationskonsole durchgeführt wurden.
 |
Übertragung an die Process Engine-Datenbank
Jedes Mal, wenn eine Workflow-Definition an die Process Engine übertragen wird, wird ein neuer Arbeitsbereich in der Process Engine-Datenbank erstellt, um auf die Programmversion des Workflows und die neueste Version anderer, zuvor übertragener Workflow-Definitionen zu verweisen. (Jeder Arbeitsbereich enthält zwei Verweise auf eine Workflow-Definition: einen auf das Autorenformat und einen auf das Laufzeitformat der Workflow-Definition.)
In der Abbildung links vergrößert sich der Arbeitsbereich, während weitere Workflow-Definitionen übertragen werden. Wenn eine neue Version einer Workflow-Definition vorliegt, wie z. B. "Alpha" in der Abbildung, dann ersetzt die neuere Version, "Alpha_1", die ältere in der Arbeitsbereichsliste. Dieser Mechanismus dient als eine Art Versionskontrolle. Dadurch wird es möglich, mehrere Versionen eines Workflows zu pflegen, die in einem isolierten Bereich ausgeführt werden können.
In einer Entwicklungsumgebung sind häufig zahlreiche Arbeitsbereiche vorhanden, deren Größe rapide ansteigt, weil die Workflow-Autoren Workflow-Definitionen etliche Male übertragen und testen, bevor sie sie für die Produktionsumgebung freigeben. In diesem Fall kann es vorkommen, dass die Größenbeschränkung des Arbeitsbereichs überschritten wird. Folgende Beschränkungen sind vorgegeben:
- Für Microsoft SQL Server 2000 liegt die Grenze bei 64 KB.
- Für Microsoft SQL Server 2005 liegt die Grenze bei 512 KB.
- Für Oracle liegt die Grenze bei 512 KB.
Wenn die maximale Größe des Arbeitsbereichs erreicht ist, führt ein Workflow-Übertragungsbefehl zu einem Pufferüberlauf-Fehler. Um dieses Problem in einer Entwicklungsumgebung zu beheben, kann der Workflow-Autor den isolierten Bereich initialisieren und die Arbeitsbereiche löschen.
In einer Produktionsumgebung sind in der Regel weniger und kleinere Arbeitsbereiche vorhanden als in einer Entwicklungsumgebung, da in einer Produktionsumgebung normalerweise nur getestete und stabile Workflow-Definitionen eingesetzt werden. Da es in der Regel arbeitsaufwändig ist, einen isolierten Bereich in der Produktion zu initialisieren, um nicht verwendete Arbeitsbereiche zu löschen, sollte sorgfältig darauf geachtet werden, häufige unnötige Übertragungen an die Process Engine-Datenbank in einem Produktionssystem zu vermeiden. |
Nicht empfohlen
 |
In der Abbildung links erstellt der Workflow-Autor im Wesentlichen identische Versionen der Workflow-Definition "Alpha", indem er den Namen der Workflow-Definition ändert und sie erneut überträgt. Beachten Sie, dass dies zu einem rapiden Anstieg der Anzahl von Arbeitsbereichen und deren Größe führt, da jede dieser Workflow-Definitionen als eindeutig betrachtet wird.
Als Alternative zu dieser Methode können Sie ein Datenfeld im Workflow verwenden, um das Thema des Workflows zur Startzeit zu aktualisieren und so jeden laufenden Workflow zu identifizieren. |
|