Kategori Arkiv: SharePoint arbetsflöde

E-posta dagliga uppgift påminnelser // Looping i SharePoint Designer arbetsflöde

Jag skrev upp en detaljerad artikel för några veckor sedan som beskriver hur du skapar en SharePoint Designer-arbetsflöde som skickar en uppgift påminnelse mail dagligen. Det har varit publicerade på den nya SharePoint Magazine webbplats. Mer allmänt, artikeln visar hur du skapar en looping struktur i SPD.

Tidningen har ett brett utbud av artiklar inklusive, bland annat, mycket tekniska grejer, intervjuer och branschnyheter. Jag rekommenderar att du lägger till din RSS-flöde.

Om du har en produkt eller tjänst att sälja, Jag skulle också överväga reklam på webbplatsen. Det är till en stark start med flera tusen par ögon tittar på det redan. Det är noga med att växa.

Slutligen, Om du har klåda att skriva något och få det ut inför en större publik, Detta är en bra tid och plats att skrapa.

</slutet>

Prenumerera på min blogg.

Technorati Tags:

Min senaste “Till försvar för SharePoint Designer” Artikeln är tillgänglig

Mark Miller över på Slutanvändaren SharePoint har postat min senaste artikel om hur du använder SharePoint Designer för att skapa stor arbetsflödeslösningar upp på sin plats. Kolla in.

I denna artikel, Jag talar om designprocessen och, mer i detalj, hur du ställer in en tillförlitlig och repeterbar test process som använder SharePoint-funktioner (anpassade listor, webbplatsmallar). Artikeln riktar sig till slutanvändare, men metoden är bra för utvecklare också.

</slutet>

Prenumerera på min blogg.

Loggning av aktivitet på arbetsflödet i SharePoint Designer

Förra veckan, Jag arbetade ut hur man loop och genomföra en tillståndsdator med hjälp av SharePoint Designer och nämnde, som en parentes, att jag förmodligen skulle skriva ett blogginlägg om bättre arbetsflöde loggning.

Brunn, Sanjeev Rajput slå mig till det. Ta en titt.

Spara loggningsdata till en anpassad lista verkar överlägsen med regelbundna arbetsflödeshistoriken:

  • Det är bara en anpassad lista, så kan du exportera den till excel mycket lätt.
  • Du kan skapa vyer, dynamiskt filtrera data, m.m..
  • Det är inte föremål för auto-laxermedel du får med vanliga arbetsflödeshistorik.

Det finns vissa risker / nackdelar:

  • Många kör arbetsflöden med en hel del loggning kan orsaka för mycket data skrivs till listan.
  • Kanske du * göra * vill ha automatisk rensning. Du får inte den funktionen med detta synsätt (utan kodning).
  • Säkerhet är knepigt. För att skriva till listan, användaren måste ha behörighet att göra det.. Det betyder att det förmodligen inte är lämplig för alla typer av "officiella" granska eftersom användaren skulle kunna upptäcka listan och redigera den. Detta kan lösas med några egen programmering.

</slutet>

Technorati Tags:

Prenumerera på min blogg.

Problemet med Tribbles … fela .. KPI: er

Detta senaste veckan jag avslutade ett proof of concept projekt för en klient i Manhattan. Samtidigt genomföra lösningen, Jag sprang in i en annan brist i MOSS KPI: er (se här för en tidigare KPI-fråga och min lösning).

Bakgrund: Vi brukade SharePoint Designer arbetsflödet modell en ganska komplicerad flera månader lång affärsprocess. Som det chugged, Det skulle uppdatera vissa statliga uppgifter i en lista. KPI: er använda dessa data för att göra deras mojo.

Vi beslutade att skapa en ny plats varje gång en ny dessa affärsprocesser drar igång. Bortsett från själva arbetsflödet, dessa platser vara värd flera dokumentbibliotek, använda målgruppsanpassning och så vidare. Bara en massa saker att hjälpa till med samarbete mellan interna medarbetarna, resande anställda och klienten är deltar affärspartners.

Vi ville också visa vissa KPI: er som övervaka den allmänna hälsan hos den specifika affärsprocessen som främjas av arbetsflödet statusdata och tittade på med hjälp av KPI: erna.

Slutligen, Vi använde KPI listobjekt som gör en räkning på en syn på en lista på webbplatsen (i motsats till att dra från en annan datakälla, som excel eller SQL).

Problemet: Som ni kan föreställa er, förutsatt att vi skulle bära den grundläggande idén fram till en produktion värld, Vi vill ha en webbplatsmall. Etablera en ny webbplats baserad bort en "business process" mall.

Problemet är att du inte tycks kunna få en fungerande KPI på det sättet. När jag skapar en ny webbplats baserad på en mall med en KPI-lista och KPI-webbdelen, den nya webbplatsen KPI data är trasiga. Den nya webbplatsen KPI lista punkter på oavsett källa du definierat när du först sparat den som en mall.

Som ett exempel:

  • Skapa en ny webbplats och bygga det till perfektion. Denna webbplats innehåller informationen som KPI.
  • Spara den som en mall.
  • Skapa en ny webbplats och bas om off mallen.
  • Denna nya webbplats KPI listobjekt’ källor pekar på mallen, inte den aktuella webbplatsen.

Instansieringen processen korrigera inte URL.

Jag försökte lösa detta genom att ange en relativ URL när du definierar posten KPI. Men, Jag kunde inte få någon variant av att det skall fungera.

Jag vill alltid para ihop dessa "problem" blogginlägg med någon form av lösning, men i detta fall jag har inte en bra. Det bästa jag kan lista är att du måste gå till webbplatsen nyligen slutna och fixa allt manuellt. Användargränssnittet gör det ännu svårare eftersom ändra URL-adressen för källan listan orsakar en uppdatering, så du verkligen har att omdefiniera hela från grunden.

Om någon vet ett bättre sätt att hantera detta, Vänligen skriv en kommentar.

</slutet>

Technorati Tags:

MEA Culpa — SharePoint Designer * kan * skapa statliga maskin arbetsflöden

Jag har nyligen lärt mig att det är möjligt och även ganska lätt att skapa en stat maskin arbetsflöden med SharePoint Designer. Nöden är mamma till uppfinningen och så bra grejer och jag hade ett behov i veckan som såg för en uppfinning. Coincidentally, Jag kom över denna MSDN foruminlägg samt. Min personliga erfarenhet denna vecka och den "oberoende bekräftelsen" ger styrka till min övertygelse. Jag planerar att skriva om detta mer utförligt med ett fullskaligt exempel, men här är kontentan av det:

  • Metoden utnyttjar det faktum att ett arbetsflöde kan ändra ett listobjekt, därmed utlösa ett nytt arbetsflöde. Jag har normalt anses detta vara en olägenhet och även bloggat om med semaforer att hantera det..
  • SharePoint gör flera oberoende arbetsflöden sig vara aktiv mot en specifik lista objekt.

Konfigurera den:

  • Designa din tillståndsdator (dvs., staterna och hur stater övergången från en till nästa).
  • Genomföra varje stat som separata arbetsflöde.
  • Konfigurera var och en av dessa statliga arbetsflöden att köra som svar på ändringar i posten.

Varje stat arbetsflöde följer denna grova mönster:

  • Vid initiering, avgöra om det verkligen ska köra genom att inspektera statusinformation i "aktuellt objekt". Abortera om inte.
  • Göra arbetet.
  • Uppdatera det aktuella objektet"" med information om nya. Detta utlöser en uppdatering till det aktuella objektet och bränder av alla arbetsflöden som staten.

Förutom den uppenbara fördelen kan att man skapa en deklarativ staten maskin arbetsflöde, allt som statusinformation är fantastiskt för att skapa KPI: er och intressant visningar.

Den har en ganska betydande nackdel — standard workflow history tracking is even more useless than normal 🙂 That’s easily remedied, men. Lagra alla dina typ granskningsinformation i en anpassad lista. Det är nog en bra idé även för vanilj sekventiella arbetsflöden, but that’s for another blog post 🙂

Jag kallar detta en "mea culpa" eftersom jag har, Tyvärr, sa mer än en gång på forum och på andra håll att man måste använda visual studio för att skapa ett statligt maskin arbetsflöde. Det är helt enkelt inte sant.

</slutet>

Prenumerera på min blogg.

Technorati Tags:

Använda semaforer i SharePoint Designer arbetsflöde för att förhindra oändliga loopar

Det är möjligt att orsaka en oändlig loop i ett arbetsflöde för SharePoint Designer. Ett gemensamt genomförande mönster som detta orsakar problemet:

  • Skapa ett arbetsflöde och associera med en lista.
  • Ange att det ska börja skapa nya objekt och uppdatering av befintliga objekt.
  • Ett steg i arbetsflödet uppdaterar ett fält i "Aktuellt objekt".
  • Eftersom det aktuella objektet ändras, Arbetsflödet startar på nytt.

Att förhindra denna oändliga loop, genomföra en enkel semafor:

  • Lägga till en webbplatskolumn (eller kolumnen till det lista/biblioteket om du inte använder innehållstyper).
  • Dölja det från redigeringssidan (lätt att göra om en webbplatskolumn via dess egenskaper, inte lika lätt om en listkolumn).
  • I arbetsflödet, Kontrollera om värdet i kolumnen semafor är tomt.
  • Om det är tomt, Ange en icke-tomma värde och gå vidare.
  • Om är inte är tomt, avsluta omedelbart.

Detta kan bli en ganska nyanserad lösning, beroende på verksamhetens krav och så vidare, men det har varit ett fungerande mönster när jag har behövt det.

</slutet>

Technorati Tags:

Prenumerera på min blogg.

Genomgång: Fixa medarbetare utbildning mall finns platser avregistrera bugg

Som många vet, mallen medarbetare utbildning som tillhandahålls av Microsoft här har en bugg som vi kan återge följande steg:

  • Skapa en klass med en max storlek på 10 studenter.
  • Registrera dig –> Totalt tillgängliga platser korrekt minskar vid en. Resultat: 9 tillgängliga platser.
  • Avregistrera: –> Bugg. Totalt tillgängliga platser bör ökas med ett. Det inte. Resultat: 9 tillgängliga platser per SharePoint, men i själva, Det finns 10 tillgängliga platser.

Lösning: Använda SharePoint Designer för att rätta till arbetsflödet.

Första, öppna upp webbplatsen. Mapplistan för mig ser ut så här:

bild

Om vi har en titt på "deltagare registrering" arbetsflöde, Vi ser att det finns ett steg märkt "Tillämpar sittplatser politik". Det ser ut så här:

bild

Detta steg i arbetsflödet uppdaterar objektet genom uppräkning "fylld säten" kolumn med metadata på banan. Om vi drar det mer i detalj, Vi ser detta:

bild

Det är all information vi behöver att fixa avregistreringen arbetsflödet.

Om vi vänder till avregistreringen arbetsflödet, Det finns ingen liknande arbetsflödessteg. Lägg till det följande:

1: Expandera "deltagare avregistreringen" och öppna upp XOML (se första skärm skott om du är förlorad).

2: Lägga till en ny arbetsflödesvariabel, "Nya fyllda stolar" av typ "Number".

3: Tilldela ett värde till "nya fylld säten" som visas:

bild

4: Minska de fyllda platserna av 1:

bild

5: Uppdatera relaterade kurs artikeln:

bild

6: Se till att alla åtgärder är i rätt ordning. För mig, Det ser ut så här:

bild

7: Avsluta arbetsflödet så att åter bygga upp det.

8: Testet.

</slutet>

Prenumerera på min blogg.

Technorati Tags: ,

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.

Observerade beteende: Flytta SPD arbetsflöden inom en webbplatssamling

UPPDATERING: Jag har forskat hur till bädda in ett SPD arbetsflöde i en webbplatsdefinition. Denna MSDN forum kedja har några intressant information. Det är inte avgörande, men poäng till Stig genom djungeln.

Jag ger detta inlägg en något udda "observerade beteende" leda, eftersom jag är lite misstänksamma att dra slutsatser från det. SPD arbetsflöden är … temperamentsfull.

Folk frågar ofta / undrar / otålig över flytta SPD arbetsflöden från en plats till en annan. Idag, Jag följde stegen och gjort dessa iakttagelser:

  • Jag har skapat ett arbetsflöde med hjälp av SharePoint Designer i en webbplats kopplad till ett dokumentbibliotek.
  • Tillhörande dokumentbiblioteket inrymt redan flera dokument.
  • Jag sparade platsen som en mall.
  • När jag sparade platsen som en mall, Jag har sparat innehåll samt.
  • Jag skapade en ny plats i samma webbplatssamling med hjälp av mallen.

Vid denna punkt, Jag försökte köra arbetsflödet. Snabbt avslutade sig med loggmeddelandet, "Misslyckades på start".

Jag anade. Jag har låga förväntningar när det gäller att flytta SPD arbetsflöden runt.

Jag fortsatte:

  • Öppnas webbplatsen i SharePoint Designer.
  • Hade en titt på arbetsflödet. Det verkade bra.
  • Jag klickade på "Slutför".
  • Jag sprang arbetsflödet.

Den här gången, det fungerade bra.

Jag ska tillägga att det här arbetsflödet används den "samla in datan från användare" åtgärder som är en relativt komplex åtgärd under huven.

Jag preliminärt slutsatsen att processen för "efterbehandling" arbetsflödet orsakade SPD ordentligt associera det SPD arbetsflöden med det nya dokumentbiblioteket. Jag också avsluta XOML och andra XML-artefakter är rimligen "löst". De är inte super tätt kopplade till dokumentbiblioteket.

Vad har detta menar? Antar att det är en pålitlig och reproducerbara process, Det finns minst en grov metod kan användas för att flytta runt. Jag vet inte om detta skulle fungera om vi korsade webbplats samling gränserna eller ens mer drastiskt, hela nya gårdar (t.ex. dev till scenen för att prod).

Om du läser detta och lutande, posta en kommentar eller maila mig din SharePoint Designer migration historia. Jag ska gärna uppdatera detta inlägg med några insikter således erbjuds.

</slutet>

Prenumerera på min blogg.

Technorati Tags:

Snabb och enkel: Arbetsflöde-bara uppdatera fält

Det är ofta bra att lagra information om status i en anpassad lista som ett godkännandekod som aldrig bör manipuleras direkt slutanvändare. Detta är ett vanligt scenario för business. Jag har arbetat med ett projekt i år som genererar olika status och påminnelse datum via SharePoint Designer arbetsflöden som sedan köra KPI: er och allmänt stöd för tajma-kritiska affärsprocesser.

Använda en webbplatsinnehållstyp / kolumn att uppnå denna effekt.

Skapa en webbplatsinnehållstyp med statuskolumnen som visas:

bild

Observera "Status (för Demo)" fältet längst.

Nästa, Klicka på kolumnnamnet tillgång kolumnens egenskaper. Välj "dolda (Visas inte i formulär)" i avsnittet kolumninställningar som visas:

bild

Detta tar bort fältet från standard redigera/Uppdatera formulären. Men, Det är fortfarande tillgänglig i, KPI: er, objektmodellen och någon annanstans du vill använda det, inklusive SPD arbetsflöde.

</slutet>

Prenumerera på min blogg.