Mot SharePoint tekniska Designmönster: SharePoint Designer arbetsflöde + Händelsen mottagaren = hög styrka Cocktail

En av de framväxande mönster som jag hitta i crafting SharePoint-lösningar utnyttjar SharePoint Designer arbetsflöde och en händelsemottagare.

Här är ett affärsscenario att sätta det i sammanhang:

  • Jag ladda upp ett dokument till en doc-lib.
  • Jag sparka igång flera steg arbetsflödet skapas med SharePoint Designer.
  • Någon gång under denna process, arbetsflöde tilldelar en uppgift till någon (via samla in data från användare eller tilldela en uppgift).
  • Vi vill använda en KPI för att spåra hur länge denna uppgift väntar på avslutningen. KPI visar grönt för aktiviteterna som är slutförda eller vederbörlig mer än 3 dagar från nu. Det visar gult om uppgiften beror i morgon eller idag. Det visar rött om uppgiften är förfallen.
  • Här är kickern: Jag vill att datumet som driver det KPI problemsituationer semester.

Jag kan inte beräkna en semester-medveten due date i SharePoint Designer arbetsflöde mycket lätt. Jag skulle behöva skapa en anpassad åtgärd eller använda en 3: e parts verktyg. Men, Det är lätt att beräkna ett datum i en händelsemottagare. Slå ihop dessa två tillsammans och vi får ett mönster som denna:

  • Definiera ett dolda ja/nej webbplatskolumn på dokumentbiblioteket märkt "DoCalcualteDueDate".
  • Initiera den till false.
  • Vid lämplig tidpunkt i arbetsflödet (t.ex. strax innan den "samla in datan" åtgärd), tilldela värdet true.
  • En ItemUpdate() händelsemottagare ser ut för att se om "DoCalculateDueDate" är sant. Eftersom händelsen mottagaren körs på varje uppdatering, "DoCalculateDueDate" är normalt falskt.
  • När arbetsflödet tilldelar DoCalculateDueDate True, händelsen mottagaren beräknar holiday-medveten due date.
  • När händelsen mottagaren gör denna beräkning, Det definierar flaggan DoCalculateDueDate till false.

I slutet, SPD arbetsflöde är kommunicerade med en händelsemottagare via DoCalculateDueDate semafor och vi har semester-medveten på grund av datum som tilldelas i exakt rätt ögonblick i arbetsflödets liv. SharePoint Designer kontroller när förfallodatumet tilldelas men händelsemottagare utför den faktiska beräkningen och tilldelning.

</slutet>

Prenumerera på min blogg.

Lämna svar

Din e-postadress kommer inte att publiceras. behövliga fält är markerade *