Freigeben über


Workflowentwicklung in SharePoint Designer

Letzte Änderung: Montag, 19. April 2010

Gilt für: SharePoint Foundation 2010

Wenn Sie einen Workflow in einem deklarativen, regelbasierten Workflow-Editor ohne Code erstellen, z. B. Microsoft SharePoint Designer 2010, erstellen Sie diesen Workflow direkt auf der Basis einer bestimmten Liste oder Dokumentbibliothek in Microsoft SharePoint Foundation 2010 und erstellen Datenbindungen zu dieser Liste oder Dokumentbibliothek. Sie verwenden eine vordefinierte Liste von Workflowaktivitäten und verwenden keinen Code. Der Workflow, den Sie entwerfen, wird nicht als Assembly kompiliert, sondern in Form von Quelldateien gespeichert, bis er von SharePoint Foundation 2010 kompiliert wird, sobald der Workflow das erste Mal ausgeführt wird.

Dieser Ansatz bietet die folgenden Vorzüge:

  • Workflows können in kurzer Zeit entwickelt und getestet werden.

  • Da sich der Workflow auf eine bestimmte Liste bezieht, wird Folgendes vereinfacht:

    • Der Bereitstellungsprozess

    • Die Verwaltung von Sicherheitsaspekten

  • Da Workflows nicht zu Assemblys kompiliert werden, können Workflows, die in einem deklarativen, regelbasierten Workflow-Editor ohne Code erstellt werden (beispielsweise SharePoint Designer 2010) für Server bereitgestellt werden, auf denen administrative Regeln die Verwendung von Assemblys aus benutzerdefiniertem Code verhindern.

HinweisHinweis

Workflows, die in SharePoint Designer 2010 erstellt werden, werden anhand einer "sicheren Liste" vordefinierter Aktivitäten zusammengestellt, deren Ausführung auf dem Server ebenfalls von Administratoren genehmigt werden sollte.

  • Workflows können von Benutzern mit weniger Programmiererfahrung, z. B. Webdesignern und Büroanwendern, erstellt werden.

Da Sie den Workflow direkt auf der Basis einer Dokumentbibliothek erstellen und eine Datenbindung zur Dokumentbibliothek herstellen, unterscheiden sich die in SharePoint Designer 2010 erstellten Workflows hinsichtlich der folgenden wichtigen Aspekte von den Workflows, die mithilfe des Visual Studio-Designers erstellt werden:

  • Ein in SharePoint Designer 2010 erstellter Workflow kann nicht für mehrere Listen bereitgestellt werden. Er gilt ausschließlich für die Liste, für die er erstellt wurde.

  • Da Sie den Workflow direkt auf der Basis einer Liste erstellen, wird der Workflow zur Entwurfszeit mit der Liste verknüpft. Aus diesem Grund gibt es für Workflows, die in SharePoint Designer 2010 erstellt werden, keine separate Zuordnungsphase.

  • Workflows, die in SharePoint Designer 2010 erstellt werden, können nicht geändert werden.

  • Die Erstellung auf der Basis eines Inhaltstyps ist in SharePoint Designer 2010 nicht möglich.

Einen ausführlichen Vergleich von SharePoint Designer 2010 und des Visual Studio-Designers finden Sie unter Vergleich der Entwicklungstools für Workflows.

Ausführen nicht kompilierter Workflows

Da sie keinen benutzerdefinierten Code enthalten, werden Workflows, die in einem deklarativen, regelbasierten Workflow-Editor ohne Code erstellt werden, z. B. SharePoint Designer 2010, nicht kompiliert und als Assemblys bereitgestellt. Sie werden in Form von Quelldateien in SharePoint Foundation 2010gespeichert und nur bei Bedarf im Arbeitsspeicher kompiliert.

Für jede Website werden Workflows dieses Typs in einer eigenen Dokumentbibliothek gespeichert. Diese Dokumentbibliothek enthält einen Ordner für jeden in SharePoint Designer 2010 erstellten Workflow. Der Ordner enthält alle Quelldateien, die für den Workflow benötigt werden, einschließlich der folgenden:

  • Die Workflow-Markupdatei

  • Die Workflow-Regeldatei

  • ASPX-Formulare für alle benutzerdefinierten Workflowformulare, die benötigt werden

SharePoint Foundation 2010 umfasst einen Just-In-Time-Compiler, um die Quelldateien zu einem Workflow zu kompilieren, wenn der Workflow erstmalig für ein Element gestartet wird. SharePoint Foundation 2010 behält den kompilierten Workflow im Arbeitsspeicher, bis er erneut aufgerufen wird. Dies ähnelt der Zwischenspeicherung kompilierter ASPX-Seiten auf Servern, um die Ausführungsleistung zu verbessern, wenn die Seite das nächste Mal aufgerufen wird.

Sobald ein Workflow für ein Element gestartet wird, bestimmt SharePoint Foundation 2010, ob der Workflow als Assembly oder in Form von Quelldateien bereitgestellt wurde. Falls eine Workflowassembly vorhanden ist, ruft SharePoint Foundation 2010 die Assembly auf, um die Workflowinstanz zu erstellen. Falls der Workflow in Form von Quelldateien bereitgestellt wurde, bestimmt SharePoint Foundation 2010 anschließend, ob anhand dieser Quelldateien bereits ein Workflow im Arbeitsspeicher kompiliert wurde. Ist dies der Fall, ruft SharePoint Foundation 2010 den speicherintern kompilierten Workflow auf, um die Workflowinstanz zu erstellen. Ist dies nicht der Fall, verwendet SharePoint Foundation 2010 den Just-In-Time-Compiler, um die Quelldateien zu einem speicherinternen Workflow zu kompilieren, der dann aufgerufen wird, um die Workflowinstanz zu erstellen.

Erstellen von Workflows mit SharePoint Designer

In SharePoint Designer 2010 wird eine assistentengesteuerte Oberfläche verwendet, die es den Benutzern ermöglicht, sequenzielle Workflows anhand vordefinierter Aktivitäten zusammenzustellen. Die Benutzer wählen Aktivitäten aus einer zuvor festgelegten Liste aus und konfigurieren diese Aktivitäten mithilfe der SharePoint Designer 2010-Oberfläche. Diese Aktivitäten können mit den im Visual Studio 2010 Workflow Designer enthaltenen Aktivitäten identisch sein. Im Hinblick auf Aktivitäten gibt es keinen Unterschied zwischen den beiden Tools.

In SharePoint Designer 2010 wird jede Aktivität jedoch als Aktion angezeigt, dargestellt durch einen Satz mit Variablen, die der Benutzer mithilfe von Dropdownmenüs und Suchdialogfeldern konfigurieren kann. Die Benutzer können außerdem Bedingungen auswählen; hierbei handelt es sich um konfigurierbare Bedingungssätze, die den Ablauf des Workflows steuern.

Während der Benutzer Bedingungen und Aktionen über die Workflowoberfläche auswählt und konfiguriert, generiert SharePoint Designer 2010 die beiden Dateien, die die Workflowklasse eigentlich darstellen:

  • Die Workflow-Markupdatei mit der Markupsprache, die die im Workflow enthaltenen Aktivitäten beschreibt.

  • Die Workflow-Regeldatei, die die Geschäftslogik des Workflows nicht als Code, sondern in Form deklarativer Regeln enthält.

Hinzufügen von benutzerdefinierten Aktivitäten und Bedingungen

Da Workflowautoren in SharePoint Designer 2010 keine benutzerdefinierten Aktivitäten erstellen können, um sie in ihren Workflows zu verwenden, sind sie auf die Aktivitäten und Bedingungen beschränkt, die der Entwickler in der in SharePoint Designer 2010 angezeigten "sicheren Liste" verfügbar macht (die auch von einem Serveradministrator genehmigt werden sollte). Entwickler können benutzerdefinierte Aktivitäten und Bedingungen erstellen und sie in der sicheren Liste verfügbar machen.

Eine Bedingung ist eine benutzerdefinierte Assembly mit einer statischen Methode, die, wenn sie aufgerufen wird, Bedingungen auswertet und einen booleschen Wert zurückgibt.

So machen Sie Aktivitäten und Bedingungen in der sicheren Liste verfügbar

  1. Erstellen Sie die Aktivität oder Bedingung, kompilieren Sie sie zu einer Assembly mit starkem Namen, und stellen Sie sie im globalen Assemblycache bereit.

  2. Fügen Sie die Aktivität oder Bedingung zur sicheren Liste in der Datei web.config hinzu.

  3. Fügen Sie in der Datei WSS.Actions, die sich im Workflowordner befindet, Regeln und Parameter für den Satz hinzu, der die Aktivität oder Bedingung in der SharePoint Designer 2010-Benutzeroberfläche darstellt. Hierbei handelt es sich um die Markupsprache, die angibt, wie die Aktivität oder Bedingung angezeigt wird und auf der Oberfläche ausgeführt wird, da diese Informationen nicht in der Aktivitäts- oder Bedingungsassembly selbst enthalten sind.

Weitere Informationen zum Bereitstellen benutzerdefinierter Aktivitäten und Bedingungen finden Sie in der Hilfe zu SharePoint Designer 2010.

Generieren von ASP.NET-Formularen in SharePoint Designer

Sie können in SharePoint Designer 2010 eine Initiierungsphase für den Workflow erstellen. Wenn Sie sich dafür entscheiden, verwendet SharePoint Designer 2010 ASP.NET, um automatisch ein Initiierungsformular gemäß Ihren Angaben zur Initiierung zu erstellen.

Gleichermaßen können Sie benutzerdefinierte Microsoft SharePoint Foundation 2010-Aufgaben für den Workflow erstellen. Auch hier generiert SharePoint Designer 2010 automatisch gemäß Ihren Angaben ein ASP.NET-Formular für die Aufgabe.

Diese ASPX-Formulare werden zusammen mit den Workflowquelldateien auf der SharePoint-Website gespeichert. Sie können diese Dateien wie jedes andere ASPX-Formular öffnen und anpassen.

Siehe auch

Konzepte

Workflowentwicklung für SharePoint Foundation

Vergleich der Entwicklungstools für Workflows

Übersicht zum SharePoint Designer-Workflow

Workflowentwicklung in Visual Studio