Kategori Arkiv: SharePoint arbetsflöde

Tidigt arbetsflöde aktivering — En icke-medicinsk lösning

UPPDATERING: Se diskussionen MSDN, särskilt den sista posten: http://forums.microsoft.com/MSDN/showpost.aspx?postid=2631057&siteid=1. Den beskriver ett tillstånd som kan kort sagt går runt hela denna sak. I korthet, Det kan vara så enkelt som att minst ett av fälten obligatorisk.

Jag har ett dokumentbibliotek som stöder åtta innehållstyper.

Jag har en SharePoint Designer-arbetsflöde som vill beräkna och tilldela en påminnelsedatum"" genom att helt enkelt subtrahera 30 dagar från en annan kolumn, "due date". Detta bör endast ske för en av innehållstyper, "Försäkring". Verksamheten syftar till att producera en KPI som visar två kategorier av bilförsäkringshandlingar: "omkring till andas ut" och "gått ut." (Du kan läsa mer om denna typ av KPI och mer betydande drill-down Här).

Jag har konfigurerat arbetsflödet för brand när en ny artikel skapas och när ett objekt ändras. Tanken är att när en försäkring dokument laddas, Vi beräknar en "varning datum" baserat på förfallodatumet. Ett par visningar arbeta i samband med en KPI-lista att belysa dessa förhållanden när användare trycker sin hemsida.

Denna strategi fungerar inte när jag ladda upp ett dokument.

Jag ladda upp dokumentet och presenterade jag meta data träder skärmen. Vid denna punkt, Jag har redan problem. SharePoint har redan, från mitt perspektiv i förtid, sparken i arbetsflödet. Jag har inte haft en chans att plocka rätt innehållstypen eller tilldela en förfallodag. På samma gång, arbetsflödet aktiveras inte när jag trycker på Skicka-knappen på denna tid. Det finns vissa inbyggda logik som "anser" att först skicka är en del av den "skapa" händelse. Så … mitt arbetsflöde har sparken och när det körs, Det var passerade standarddatavärden meta.

Den bästa verk-runt omkring jag känner till är att infoga en "paus tills" aktivitet i arbetsflödet. Jag har arbetsflödet paus för 1 minut. Medan det paus, Jag väljer rätt innehållstyp, anger metadata och skickar. Pausen är klar och arbetsflödet fortsätter som behövs. (Observera att i min omgivning, timer arbetsflödesaktiviteter från SPD fungerar inte ur lådan. Du kan ha samma problem. Se Här för mer information).

Jag gillar inte "magiska dröjsmål" verk-runt omkring. Vad händer om användaren överför ett dokument och telefonen ringer och den efterföljande konversationen outlasts paus? Jag kan göra paus längre, men jag gillar det fortfarande inte.

Jag skrev om detta på MSDN forum här: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2430725&SiteID=1

Snabb och enkel: Skicka ett e-postmeddelande med inbäddade hyperlänk från SharePoint Designer arbetsflöde

En eller två gånger månad, någon inlägg en forum-fråga: "Hur jag inkludera hyperlänkar till URLS som är klickbara från ett e-postmeddelande med SharePoint Designer?"

Presenteras utan ytterligare kommentarer: (väl, faktiskt finns det ytterligare kommentar efter bilden):

bild

Becky Isserman följer upp med en bra förklaring om hur du bäddar in en länk till ett objekt i e-: http://www.sharepointblogs.com/mosslover/archive/2007/11/20/addition-to-paul-galvin-s-post-about-sending-an-e-mail-with-hyperlinks-in-spd.aspx

Snabb och enkel: Aktivera SharePoint Designer arbetsflödet att uppdatera ett InfoPath-formulär

Scenariot: Jag har ett InfoPath-formulär som front-avslutar en arbetsflödesprocess som genomförs med hjälp av SharePoint Designer. Vid ett tillfälle, en chef måste godkänna form. Eftersom jag inte kan räkna med arbetsflödeshistoriken till min revision krav, Jag bestämmer mig att lagra min egen revision meddelande direkt på själva formuläret.

Översikt:

Designa formuläret och publicera den som en innehållstyp och själva formuläret till ett dokumentbibliotek. Markera önskad formulärfält som kan uppdateras från MOSS. Formuläret är knuten till innehållstypen och innehållstypen är "kopplad" till ett formulärbibliotek (eller många, Om du vill). Skriva ett arbetsflöde som uppdateras fältet.

Specifika åtgärder:

  1. Skapa ett dokumentbibliotek. Detta kommer att hålla din InfoPath-mall.
  2. Skapa ett formulärbibliotek.
  3. Skapa InfoPath-formuläret. Inkludera ett textfält, "Revision Message".
  4. Publicera formuläret som en innehållstyp (INTE ett dokument).
  5. Samtidigt fyller publicerar dialoger:
    en) Spara XSN-filen till dokumentbiblioteket (steg #1).
    b) Publicera meddelandet"revision" fält och markera sant: "Tillåt användare att redigera data i fältet med hjälp av ett datablad eller egenskaper sida".
    c) Skapa en ny innehållstyp och ge det ett namn.
  6. Tillgång till formulärbibliotek.
    en) Gå till dess avancerade inställningar och aktivera formulärbiblioteket att hantera innehållstyper.
    b) Välj den nyskapade innehållstypen (5c ovan). Det kommer att grupperas under "Microsoft InfoPath" (eller liknande).
    c) Ta bort standard "Form" innehållstyp från biblioteket.
    d) Mark biblioteket "Visa som webbsida" så att formuläret kommer att starta från SharePoint och inte InfoPath workstation-klient.
  7. Gå tillbaka till det korrekta formulärbiblioteket och klicka på "ny" att helt enkelt kontrollera att formuläret är bokförda korrekt och tillförordnad som du vill.
  8. Brand upp SharePoint Designer och navigera till den webbplats som är värd för din formulärbibliotek (från steg 2).
  9. Skapa ett nytt arbetsflöde som bifogas formulärbiblioteket.
  10. Lägga till en enda åtgärd "Ställa in fältet i aktuellt objekt". Du bör räkna med SharePoint Designer att lista du är ditt område, "Revision Message". Tilldela den ett värde.
  11. Klicka på Slutför och gå tillbaka till formulärbiblioteket.
  12. Skapa ett nytt formulär och sätta vissa testvärdet i meddelandet"revision" fältet.
  13. Spara den och gå tillbaka till formulärbiblioteket.
  14. Högerklicka på, Välj "arbetsflöde" och starta upp ditt arbetsflöde.
  15. Det ska köras nästan omedelbart. Dra upp form (från steg 12) och om alla har gått för att planera, "Revision Message" har tilldelats oavsett värde du angav i steg 10.

Anteckningar:

Inte alla kontroller kan konfigureras för denna dubbelriktad kommunikation. Till exempel, Det verkar inte att genomföra en SPD arbetsflöde som ändrar textfält insvept inuti upprepande avsnitt.

En av de viktigaste take-away's här är att vi verkligen har skapat en innehållstyp med en tillhörande mall. Detta också ger oss möjlighet att lagra flera InfoPath-formulärmallar i samma formulärbiblioteket.

Detta kräver forms server. Det kommer säkerligen inte att arbeta i en WSS 3.0 miljö och förmodligen även kräver en Enterprise SharePoint-miljön.

SharePoint Designer — Anpassad verksamhet att köra användardefinierade C# funktioner

UPPDATERING: Detta har släppts till CodePlex här: http://www.codeplex.com/spdwfextensions

UPPDATERING: Se här för senaste release notes: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

UPPDATERING: Se här för mina tankar om kommersialisera detta projekt: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Detta projekt innehåller en anpassad aktivitet i SharePoint Designer. Använd den här anpassade aktiviteten att åberopa (avsändande) en C#-funktion som du införlivas med den länkade församlingen.

I slutet av oktober, 2007, Detta är bara en första version av projektet. Jag planerar att expandera den med ett antal ytterligare funktioner, inklusive delsträng, index, Ersätt, åberopa webbtjänster och allt som verkar användbart eller intressant. Jag planerar också att posta detta till codeplex när jag har min agera tillsammans på den fronten. Detta kommer också att sättas som en lösning vid något tillfälle.

Om du har några synpunkter, frågor eller förslag, Vänligen lämna dem i kommentarer eller e-posta mig.

Ansvarsfriskrivning:

Jag gör absolut inga anspråk detta lämplighet för något ändamål. Använd på egen risk.

Installationsanvisningar (som skall följas vid varje WFE i gården):

1. Hämta zip och extrahera.

2. Installera .dll i GAC. Jag öppna brukar c:\windowsassembly med hjälp av Utforskaren i windows och kopiera it det.

3. Ändra web.config lägga till församlingen till säkra kontroller:

<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>

<authorizedType Assembly = "SpdGenericInterface, Version = 1.0.0.0, Kultur = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Auktoriserad = "True" />

4. Kopiera "SpdGenericInterface.actions" c:\Programmet c:ProgramDelade filerMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Observera att ovanstående platsen är specifika för engelska installationer.

5. Stäng SharePoint Designer (om det redan är öppen).

6. iisreset

7. Öppna SPD och skapa ett nytt arbetsflöde.

Om allt går bra, Du bör belönas med en ny kategori av åtgärder:

bild

Anteckningar:

Se Här (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) en utmärkt översikt över processen för att skapa, Installera och konfigurera en lösning så här.

ZIP är utformad för att extrahera direkt till dig c:\ enhet. Om du gör detta, Du kan öppna projektet och alla banor kommer att överensstämma.

Använda detta i visual studio, du behöver förmodligen installera "Extensions för Windows WF".

Första uppladdning innehåller bara en "dispatcher funktion", "ToLower()". Att lägga till mer funktionalitet, lägga till det till metoden Execute som:

 skyddade åsidosätta ActivityExecutionStatus
          Köra(ActivityExecutionContext executionContext)
        {

            sträng functionToDispatch;
            functionToDispatch = Detta.DispatchFunction.ToLower();

            Växla (functionToDispatch)
            {
                fallet "tolower()":
                    {
                        Detta.OutResult1 = Detta.InParam1.ToLower();
                        paus;
                    }

                standard:
                    {
                        Detta.OutResult1 = "Okänd funktion: [" + Detta.DispatchFunction + "].";
                        paus;
                    }
            }

            återvändande ActivityExecutionStatus.Stängt;
        } // ActivityExecutionStatus

    }

Sedan, bygga om projektet och kopiera församlingen till GAC. Jag förväntar mig en iisreset skulle krävas.

Anpassade SPD arbetsflödesåtgärd – få den <WorkflowInfo> Etikett rätt att undvika frustration

Del av processen för att skapa en anpassad åtgärd för SharePoint Designer innebär skapar en "actions" filen.

Jag har hittats och försökte använda prov mallar som börjar:

<?XML version="1.0" kodning="UTF-8" ?>
<
WorkflowInfo xmlns="http://schemas.microsoft.com/SharePoint/">
<
Åtgärder Sekventiell="sedan" Parallell="och">

Men, attributet xmlns hindrar min omgivning från att arbeta. Mina handlingar dyker inte upp i SPD.

Lösningen är att ta bort attributet xmlns, göra en iisreset och stäng/re-öppna SPD.

SharePoint Designer, “Samla in Data från användare” och använder dessa resultat.

Använda den "samla in datan från användare" åtgärder för att skapa och tilldela en uppgift till en användare som efterfrågar dem data. Bland annat, Jag har använt det en användaren att godkänna eller avvisa en begäran och ange några kommentarer.

Denna åtgärd sker i form av:

Samla data från Denna användare (Utgång till Variabel: collect1)

Att klicka på data drar upp en serie dialogrutor där du kan ange vilka data som användaren bör ge när slutföra uppgiften och Denna användare är uppenbart.

Den produktion delen (Variabel: collect1) sparar ID för uppgiften. Du använda detta i ditt arbetsflöde för att extrahera användarens faktiska svar via den "jämför valfri datakälla" villkor.

Detta villkor visar som

Om fältet är lika med värde

Klicka på fältet och sedan f(x) ikonen och det drar upp en annan dialogruta. Använd denna generaliserad dialogrutan till att tala om SPD två saker;

1. Vad är den listan och kolumnen vars värde du vill jämföra.

2. Hur bör arbetsgångsmotorn hitta specifika raden i listan?

Att göra detta:

  1. Ändra "källa" dropdown att peka på listan i rätt. Observera att dialogrutan expanderas och visar ett "hitta the listobjekt" avsnitt.
  2. I Lookup Detaljer fältet dropdown, Markera namnet på det fält vars värde du vill (Detta mappas till vad du heter i dialogrutan samla in data från ovan).
  3. I den "hitta listobjektet" avsnitt, Välj "uppgifter:ID" i fältet dropdown.
  4. I värdefältet, Klicka på f(x). Ännu en dialogrutan öppnas.
  5. Ändra källan "arbetsflödesdata"
  6. Välj arbetsflödesvariabeln som matchar till "Output till variabeln" från åtgärden samla in data.
  7. Klicka på OK/OK och du är klar.

Det ser ut så här för mig:

bild

Vid denna punkt, Du kan nu använda det värdet i arbetsflödet som krävs.

Ytterligare anmärkningar:

Som en kort parentes, Jag skapar alltid en korrekt namngivna arbetsflödesvariabel av typen "lista objekt-ID" och använda det istället för den automatiskt genererade "collect1".

Detta "jämför valfri datakälla" dialogrutan används på flera olika ställen i SPD och är väl värt mastering.

== slutet

Technorati Tags: