Austauschbare Workflowdienste

Letzte Änderung: Freitag, 16. April 2010

Gilt für: SharePoint Foundation 2010

Inhalt dieses Artikels
Übersicht
Beispiele für die Verwendung
Entwicklungsschritte

Austauschbare Workflow-Dienste stellen einen Mechanismus bereit, mit dem externe Anwendungen oder Komponenten programmgesteuert mit den Workflowinstanzen kommunizieren können, die derzeit auf dem Server ausgeführt werden.

Übersicht

In Windows SharePoint Services 3.0 konnten Workflows auf eine begrenzte Anzahl von Ereignissen antworten. Zur Erweiterung der Workflowfunktionen mussten Entwickler einen Codeaufruf eines externen Diensts programmieren und anschließend einen Webdienst erstellen, der Parameter akzeptierte, um eine bestimmte laufende Workflowinstanz zu aktualisieren. Die neuen Workflows in Microsoft SharePoint Foundation 2010 bieten umfangreichere Erweiterungsmöglichkeiten als Workflows aus früheren Versionen und ermöglichen die Interaktion mit und Reaktion auf eine größere Zahl von benutzerdefinierten internen und externen Ereignissen. SharePoint Foundation stellt Mittel bereit, um Workflows so zu programmieren, dass sie die Anwendung auf bestimmte externe Ereignisse überwachen.

Austauschbare Workflow-Dienste ermöglichen die Workflowausführung bis zu einem angegebenen Punkt. Anschließend wartet der Workflow auf Informationen von einem externen Prozess.

Architektur

Nachfolgend ist der Datenfluss beim Starten eines austauschbaren Workflow-Diensts dargestellt:

  1. Der Workflowcode wird gestartet und lädt das Workflowmodul.

  2. Das Workflowmodul liest die Kanalklassen und Assemblys aus der Konfigurationsdatei.

  3. Die Kanäle werden aus dem globalen Assemblycache geladen, und die Workflowlaufzeit wird gestartet.

SPWorkflowService ist die abstrakte Klasse, die Diensten den Zugriff auf die grundlegende Funktionalität und die Basisdaten bereitstellt. Alle auswechselbaren Dienste müssen von dieser Klasse erben.

Beispiele für die Verwendung

Verwendung von austauschbaren Diensten in einem Workflow, um Mitteilungen von einem externen Versandsystem zu empfangen

Ein Unternehmen hat ein umfangreiches Bestellverarbeitungssystem mit SharePoint Foundation aufgebaut. Jede Bestellung entspricht einem Listenelement in der Auftragsliste. Mithilfe von Workflows werden die Geschäftsabläufe vom Bestelleingang bis zur Erledigung automatisiert. Für den Versand an Kunden weltweit setzt das Unternehmen jedoch verschiedene Speditionen ein.

Seit kurzem gibt es einige Schwierigkeiten, pünktlich Statusaktualisierungen von den Versandunternehmen zu erhalten und diese Informationen in die Bestelldetails einzubinden. Das Unternehmen benötigt eine Möglichkeit, automatisch Aktualisierungen von der Spedition zu empfangen, damit die Auftragsinformationen stets aktuell sind. Die Speditionen verfügen über automatisierte Systeme, um Kunden über den Lieferstatus ihrer Bestellungen zu informieren.

Mithilfe von austauschbaren Workflow-Diensten kann ein Entwickler den Workflow unterbrechen, während er auf die Zustellbestätigung von der Spedition wartet. Wenn der Workflow den Lieferstatus empfängt, aktualisiert er die SharePoint-Liste und fährt mit dem nächsten Schritt im Workflow fort, der Rechnungsstellung.

Entwicklungsschritte

Ein Workflow-Dienstentwickler muss nur zwei Dinge implementieren:

  1. Den benutzerdefinierten Workflow-Dienst.

  2. Einen Ereignishandler oder Webdienst, der das externe Ereignis empfängt und darauf mit dem Aufruf der passenden Funktion im benutzerdefinierten Workflow-Dienst reagiert, sodass der korrekte Workflow fortgesetzt werden kann.

Siehe auch

Konzepte

Erstellen austauschbarer Workflowdienste