NINTEX Workflow 2010: State machines

Joost

De afgelopen weken ben ik weer veel met NINTEX Wokflow 2010 bezig geweest. De laatste keer dat ik een workflow heb ingericht was met behulp van een zogenaamde state machine workflow. Deze methode om workflows te creëren is zeer interessant maar behoeft wel wat extra uitleg.

Wat is een state machine?
Een state machine is een onderdeel van Microsoft .NET Framework 4.0. Hierdoor heeft NINTEX deze actie ook mogelijk gemaakt in NINTEX Workflow 2007 en de 2010 versie. Aan de hand van deze ‘state machine’ acties kunnen er binnen de workflow vele verschillende statussen worden gedefinieerd. Een state machine heeft altijd twee of meer statussen, en een van deze statussen is actief tijdens de uitvoer van de state machine. Het gebruik van een ‘state machine’ actie is zeer handig indien er veel tussen statussen gewisseld moet worden.

Zoals gezegd kan een state machine workflow handig zijn voor verschillende doeleinden. hierbij zijn verschillende voorbeelden te geven:

  • Offerte proces, waarbij de offerte sequentieel moet worden goedgekeurd door meerdere personen;
  • Beoordeling van een item of aanvraag waarbij er meerdere uitkomsten zijn bij de beoordeling;

Het maken van een State Machine workflow is binnen NINTEX Workflow heel eenvoudig. Door de workflow actie ‘state machine’ (uit de categorie Logic and flow) op de juiste plaats in de workflow designer te slepen, wordt er een state machine aangemaakt. De volgende stap is het aanmaken van alle benodigde ‘states’. Binnen deze ‘states’ worden dan de verschillende acties helemaal ingericht. Zo kunnen er onder andere berichten verzonden worden, kan CRM geüpdate worden en kan het lijstitem of bestand geüpdate worden.

imageOp NINTEX Connect is een voorbeeld van een State Machine workflow uitgewerkt. De beschrijving is gemaakt voor SharePoint 2007 met NINTEX Workflow 2007. Deze beschrijving is ook zeer goed te gebruiken voor SharePoint 2010 en NINTEX Workflow 2010.

Safe loop mechanisme
Tijdens het inrichten van de laatste workflow kreeg ik de vraag waarom de gebruikers zo lang moeten wachten, immers men verwachte dat het item direct werd geüpdate. Het probleem wat men hier tegen komt is het safe loop mechanisme. Dit mechanisme zorgt ervoor dat er 5 minuten gewacht wordt wanneer er gewisseld moet worden van ‘state’. Dit heeft NINTEX gedaan om te voorkomen dat een oneindige loop alle resources opneemt van de SharePoint server. Indien dit gebeurt zal SharePoint niet meer werken…

Het is mogelijk om het safe loop mechanisme terug te brengen naar 1 minuut. Persoonlijk zou ik dit niet adviseren omdat je dan te weinig tijd zou hebben om de workflow te stoppen indien een oneindige loop gecreëerd is. Ook NINTEX adviseert om het safe loop mechanisme nooit lager te zetten dan 5 minuten. Een en ander is door NINTEX kort uiteengezet als antwoord op een vraag over dit mechanisme, klik hier voor de link.

Oneffenheidje
Aan het begin van het maken van een state machine workflow definieer je alle benodigde statussen. Tijdens het configureren van de state machine merkte ik dat ik de verkeerde statussen had gebruikt en dat daardoor de volgorde raar werd weergegeven. Ik besloot de state’s te hernoemen. Wat me opviel bij het uitvoeren van de worfklow was dat de aangepaste namen keurig werden verwerkt in de flow. Maar bij de workflow actie ‘change state’ wordt de naam van de state opgenomen in het onderste label veld. Dit veld wordt niet automatisch aangepast als de namen van de states worden aangepast. Dit leidde in eerste instantie tot verwarring bij mij en de gebruikers.
Bovenstaande is gemeld bij NINTEX en zal zeer waarschijnlijk niet worden opgelost in de volgende release (de nieuwe release met bugfixes wordt op zeer korte termijn verwacht). In de release hierna wordt bovenstaande oneffenheid zeer waarschijnlijk wel meegenomen.

NINTEX workflow 2010 – een inzicht de in de mogelijkheden – de start

Joost

Een week of 2 geleden heb ik de cursus NINTEX Workflow 2010 gevolgd. Deze cursus heb ik als web cursus gevolgd. Dit betekende dat ik uiteindelijk 3 dagen thuis voor de computer gezeten, met een live meeting verbinding naar Engeland. Helaas voor mij zat ik in de Middle East time zone, dit betekende dat ik elke dag om uiterlijk 07.30 moest inloggen. Maar al met al vond ik het een zeer leerzame training en heb ik er veel geleerd. In deze (en de volgende blog posts) wil ik enkele zaken delen die ik van de cursus heb opgestoken.

Algemene inleiding NINTEX Workflow 2010

Met behulp van NINTEX Workflow 2010 geef je de gebruikers of de beheerders van de SharePoint omgeving de mogelijkheid om eenvoudig workflows te creëren. Om een workflow met behulp van NINTEX Workflow 2010 in elkaar te zetten hoef je absoluut geen programmeer kennis te hebben. Door het oppakken van bouwblokken en deze op de juiste plaats in de workflow designer te plaatsen kan iedereen een workflow in elkaar zetten.

in onderstaande figuur wordt weergegeven hoe NINTEX Workflow 2010 geplaatst worden binnen de SharePoint omgeving in vergelijking met de andere SharePoint tools voor het creëren van workflows.

Workflow tools in SharePoint 2010

Installatie van NINTEX Workflow 2010

NINTEX Workflow 2010 is een workflow pakket dat binnen SharePoint 2010 wordt geïnstalleerd. Dit pakket werkt niet op de 2007 versie van SharePoint. Hiervoor is de NINTEX Workflow 2007 versie beschikbaar. NINTEX is een Windows installer die op alle Front End servers van de SharePoint omgeving geïnstalleerd moet worden. Op de achtergrond installeert deze installer diverse WSP’s en features binnen de SharePoint omgeving. Uiteindelijk zal je NINTEX Workflow 2010 terugzien op de Central Administration pagina van SharePoint.

image

Na de installatie van NINTEX Workflow 2010 zullen de geïnstalleerde features ook gedeployed moeten worden naar de web applicaties waar NINTEX Workflow 2010 gebruikt zal gaan worden. Dit doe je door de oplossingen aan te klikken en te deployen naar de web applicaties die voor de organisatie van belang zijn (dit is ook mogelijk met de STSADM command: ‘STSADM –o deploysolution’). Nadat de features zijn toegevoegd aan de verschillende web applicaties zullen de features ook op Site Collectie niveau en op Site niveau geactiveerd moeten worden.

Configureren van NINTEX Workflow 2010

Voor het configureren van NINTEX Workflow 2010 moeten enkele configuraties gemaakt worden. Zo zal er een Configuratie database gecreëerd moeten worden (deze database dient tevens als content database voor de workflows). Vervolgens zal de licentie geïmporteerd moeten worden. Ook zal

Nadat de bovenstaande stappen zijn ondernomen moeten er enkele stappen ondernomen worden die voor elke organisatie anders kunnen zijn. Als eerste moeten de globale settings ingevuld worden. Hier moeten de e-mailadressen van de e-mails geconfigureerd worden. Tevens is het vanaf deze locatie mogelijk om eenvoudig andere templates aan e-mails te koppelen. Daarnaar moet er in Central Administration aangegeven worden welke blokken er beschikbaar zijn voor het maken van de workflows. Tevens kan LazyApporal geconfigureerd worden (hierover binnenkort meer!). En als laatste kunnen er enkele standaard omgevings variabelen gedefinieerd worden. Hierbij kan onder andere gedacht worden aan een gebruikersnaam en wachtwoord voor het aanspreken van web services. In dit geval configureer je de Gebruikersnaam en Wachtwoord in Central Administration en kunnen de gebruikers deze credentials gebruiken, zonder dat zij zien welke credentials dit zijn.

Mocht je interesse hebben over NINTEX Workflow 2010, neem dan contact op met Joost van Lier.