SharePoint 2013 bringt nun eine Neue Workflowengine mit. Unter anderem ist es möglich Schleifen in einem Worklfow zu verwenden und das nur unter Verwendung des SharePoint Designers.
Leider wird diese neue Workflowengine nicht automatisch mit der SharePointinstallation ausgeliefert. Die neue Engine basiert auf .NET 4 und wird mit der Windows Azure Workflow Engine installiert. Grundsätzlich liefer Microsoft unter http://technet.microsoft.com/en-us/library/jj658588(v=office.15) eine Installationsanleitung. Allerdings meine ich, dass auf ein paar Stolpersteine vergessen wurde.
Download und Setup
unter http://go.microsoft.com/fwlink/?LinkID=252092 wird der Web Platform Installer 4.0 aufgerufen und die notwendigen Setupdateien werde runtergeladen und installiert.
Nach der Installation startet der Configuration-Wizard. Hier sind vorher noch einige Vorarbeiten notwendig.
Service Konto
Für die Azure Workflow Engine ist eine eigenes Service Konto erforderlich. Dieses Konto muss in der Gruppe der Administratoren sein, und am SharePoint Server zur Gruppe der Admins hinzugefügt werden! In meinem Demo verwende ich das Konto: AD\WFApp
Weiters benötigt das Servicekonto Rechte am SQL Server. Im neu angelegten Login werden folgende Rollen zugewiesen:
Windows Azure Workflow Configuration Wizard
Auch wenn nach dem Setup der Wizard gleich startet. Achtung! die Konfiguration muss als Service Konto durchgeführt werden. Es ist notwendig, dass das AD\WFApp Konto zur lokalen Anmeldung am Windows verwendet wird und der Wizard aus dieser Session heraus gestartet wird. Ein “Run As” reicht nicht.
Als WFApp kann nun der Wizard gestartet werden:
Vergisst man auf diese Anmeldung läuft der Wizard fast bis zum Ende. Der letzte Schritt “Add Host to Workflow Farm” schlägt fehl. Bei genauerer Betrachtung findet man eine “Not Authorized”-Exception.
Der Wizard legt unter anderem mehrere Datenbanken sowie Webanwendungen zur Verwaltung an. Zunächst muss eine neue Workflow Farm installiert werden. Verwendet man “With Custom Settings” kann jede Datenbank extra angeben werden. Mit “Using Dfeault Settings” wirds einfacher.
Im Wizard ist nun der Datenbankserver anzugeben und der Service Account. Achtung: der Wizard schlägt WFApp@AD vor. Richtig ist aber die Angabe der vollständigen Domain: also bei: WFApp@AD.local Eine falsche Angabe hier für ebenfalls zu dem Fehler beim “Add Host to Workflow Farm”
Bei einer simplen Demo Installation oder einer Ein-Server-Installation kann die Kommunikation über http ausgewählt werden. Https ist nicht zwingend. Hierfür ist die Checkbox zu setzen.
Erfolg sieht so aus:
Nun ist die Session als WFAPP nicht mehr notwendig. Weiter geht es mit dem Farm Administrator.
Verbindung der SharePoint Farm mit der Workflow Farm
Um SharePoint mit der Workflow Farm zu verbinden, ist ein Aufruf des Register-SPWorkflowService Commandlets in der SharePoint Management Shell notwendig. Es sind drei Parameter anzugeben:
-SPSite … die Url der SharePoint Site Collection
-WorkflowHostUri .. die URL der Verwaltungsanwendung der Workflowfarm. Für http Zugriff wird diese default mit dem Port 12291 angelegt. (https: 12290)
-AllowOAuthHttp …. dass http verwendet wird.
Testen der Installation
Wer bis hier her gekommen ist, hat man es fast geschafft. Mit dem SharePoint Designer 2013 können nun Workflows für 2013 erstellt werden. Als Plattform Type sollte bereits 2013 ausgewählt sein:
Sollte die Fehlermeldung “The list of workflow actions on the server references an assembly that does not exist.” erscheinen, nicht abschrecken lassen.
Im Internet sind einige Einträge zu finden, die besagen, dass der Hauptspeicher nicht ausreichend ist. und die Hardwareanforderung mit 24 GB auch zu beachten ist. Meine virtuelle Maschine hat 16 GB und laut Task Manager sind genügend GB frei.
Abhilfe schafft ein Reboot der Server Maschine.
Have fun with SharePoint 2013 Workflows.