Kategori Arkiv: SharePoint Workflow

Tidlig arbejdsproces aktivering — En ikke-medicinsk løsning

OPDATERING: Se denne MSDN diskussion, især den sidste post: http://forums.microsoft.com/MSDN/showpost.aspx?postid=2631057&siteid=1. Det beskriver en tilstand, der kan kort sagt kredsløb hele denne ting. Kort sagt, Det kan være så simpelt som at gøre mindst et af felterne obligatorisk.

Jeg har et dokumentbibliotek, der understøtter otte indholdstyper.

Jeg har en SharePoint Designer arbejdsprocessen, der ønsker at beregne og tildele en "rykker dato" ved blot at fratrække 30 dage fra en anden kolonne, "forfaldsdato". Dette bør kun ske for én af de indholdstyper, "Forsikring". Business målsætning er at udarbejde en KPI, der viser to kategorier af forsikringsdokumenter: "ved at udløbe" og "er udløbet." (Du kan læse mere om denne form for KPI og flere betydelige drilldown Her).

Jeg har konfigureret arbejdsproces brand når et nyt element oprettes, og når et element er ændret. Ideen er, at når en forsikring dokument er uploadet, vi beregne en "advarsel dato" baseret på udløbsdato. Et par synspunkter arbejde i forbindelse med en KPI-liste til at fremhæve disse betingelser, når brugere trykker deres hjemme side.

Denne strategi virker ikke, når jeg uploader et dokument.

Jeg uploade dokumentet og forelagde jeg med meta data indrejse skærmen. På dette punkt, Jeg er allerede i knibe. SharePoint har allerede, for tidligt fra mit perspektiv, fyret arbejdsprocessen. Jeg har ikke haft en chance for at vælge den rigtige indholdstype eller tildele en forfaldsdato. På samme tid, arbejdsprocessen udløses ikke, når jeg ramt sendeknappen på dette tidspunkt. Der er nogle indbyggede logik, som "mener" der først indsende er en del af den "oprette" Event. Så … min arbejdsproces er fyret og hvornår det udføres, Det blev vedtaget standard meta dataværdier.

Det bedste arbejde-omkring jeg kender til er at indsætte en "pause indtil" aktivitet i arbejdsprocessen. Jeg har arbejdsproces pause for 1 minut. Mens det pauser, Jeg vælger den rigtige indholdstype, Angiv metadata. Pause fuldender og arbejdsprocessen provenu efter behov. (Bemærk, at i mine omgivelser, timeren arbejdsprocesaktiviteter fra SPD arbejde ikke ud af kassen. Du kan have den samme ulejlighed. Se Her for flere detaljer).

Jeg kan ikke lide "magiske forsinkelse" arbejde-omkring. Hvad sker der, hvis brugeren overfører et dokument og telefonen ringer og den efterfølgende samtale outlasts pause? Jeg kan gøre det længere pause, men jeg kan stadig lide ikke det.

Jeg skrev om dette på MSDN fora her: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2430725&SiteID=1

Hurtig og enkel: Send en mail med integrerede hyperlink fra SharePoint Designer arbejdsprocessen

En gang eller to gange om måneden, nogen stillinger et forum spørgsmål: "Hvordan jeg medtage hyperlinks til URLs, der er klikbare fra et SharePoint Designer e-mail?"

Præsenteret uden yderligere kommentarer: (godt, faktisk er der yderligere kommentar efter billedet):

billede

Becky Isserman følger op med en god forklaring på hvordan man kan integrere en link til et element i e-mailen: 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

Hurtig og enkel: Aktivere SharePoint Designer arbejdsprocessen for at opdatere en InfoPath-formular

Scenario: Jeg har en InfoPath-formular, som front-ends en arbejdsproces, der er implementeret ved hjælp af SharePoint Designer. På et tidspunkt, en leder skal godkende form. Da jeg ikke kan regne med Arbejdsproceshistorik at opfylde min revision krav, Jeg beslutter at gemme min egen revision meddelelse direkte på selve formularen.

Oversigt:

Designe formularen og udgive det som et indholdstype og selve formularen i et dokumentbibliotek. Mark ønskede formularfelter for at være opdaterbar fra MOSS. Formularen er bundet til den indholdstype og den indholdstype er "knyttet" til et formularbibliotek (eller mange, Hvis du vil). Skrive en arbejdsproces, der opdaterer feltet.

Bestemte trin:

  1. Oprette et dokumentbibliotek. Dette vil holde dine InfoPath-skabelon.
  2. Opret et formularbibliotek.
  3. Oprette InfoPath-formularen. Omfatte et tekstfelt, "Overvågningsmeddelelse".
  4. Udgiv formularen som en indholdstype (IKKE et dokument).
  5. Samtidig udfylder de udgivelse dialoger:
    en) Gemme .xsn-filen til dokumentbiblioteket (trin #1).
    b) Udgive meddelelsen"revision" feltet og markere sand: "Tillad brugere at redigere dataene i dette felt ved hjælp af et dataark eller egenskaber side".
    c) Oprette en ny indholdstype og give det et passende navn.
  6. Få adgang til formularbibliotek.
    en) Gå til dens avancerede indstillinger, og aktiver det formularbibliotek til at administrere indholdstyper.
    b) Vælg den nyoprettede indholdstype (5c ovenfor). Det vil blive grupperet under "Microsoft InfoPath" (eller lignende).
    c) Fjerne standard "Form" indholdstype fra biblioteket.
    d) Mark biblioteket til "Vis som Web-side" så formen vil lancere fra SharePoint og ikke InfoPath arbejdsstation klienten.
  7. Gå tilbage til biblioteket formularer korrekt og klik på "ny" at blot kontrollere, formen er bogført korrekt og fungerende, som du vil.
  8. Brand op SharePoint Designer og naviger til det websted, der er vært for din formularbibliotek (fra trin 2).
  9. Oprette en ny arbejdsproces knyttet til formularbibliotek.
  10. Tilføje en enkelt handling "Angivet felt i aktuelle element". Du skal forvente SharePoint Designer til at liste du dit felt, "Overvågningsmeddelelse". Tildele en værdi.
  11. Klik på Udfør og gå tilbage til formularbiblioteket.
  12. Opret en ny formular og sætte nogle test værdi i meddelelsen"revision" felt.
  13. Gem det og gå tilbage til formularbiblioteket.
  14. Højreklik på, Vælg "arbejdsproces" og starte op din arbejdsproces.
  15. Det bør køre næsten straks. Trække op form (fra trin 12) og hvis alle gået til at planlægge, "Overvågningsmeddelelse" har fået tildelt uanset værdi, du angav i trin 10.

Noter:

Ikke alle kontrolelementer kan konfigureres for denne tovejskommunikation. For eksempel, Det synes ikke at gennemføre en SPD workflow, der ændrer tekstfelter indpakket i gentagne sektioner.

En af de centrale take-away's her er at vi virkelig har skabt en indholdstype med en tilhørende skabelon. Dette giver også mulighed for at gemme flere InfoPath-formularskabeloner i samme formularbiblioteket.

Dette kræver forms server. Det helt sikkert ikke gå på arbejde i en WSS 3.0 miljø og sandsynligvis endog kræver en Enterprise SharePoint miljø.

SharePoint Designer — Brugerdefineret aktivitet at udføre brugerdefinerede C# funktioner

OPDATERING: Dette er blevet udleveret til CodePlex her: http://www.codeplex.com/spdwfextensions

OPDATERING: Se her for seneste produktbemærkninger: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

OPDATERING: Se her for mine tanker om kommercialisering dette projekt: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Dette projekt indeholder en brugerdefineret aktivitet i SharePoint Designer. Brug denne brugerdefinerede aktivitet til at påberåbe sig (forsendelse) enhver C#-funktion, du er indarbejdet i den sammenkædede forsamling.

I slutningen af oktober, 2007, Dette er blot en indledende version af projektet. Jeg planlægger at udvide det med en række ekstra funktioner, herunder understreng, indeks, Erstat, påberåbe sig webtjenester og noget, der ser ud til nyttige eller interessante. Jeg planlægger også at skrive dette til codeplex, når jeg har min handle sammen på fronten. Dette vil også være deployerbare som en løsning på et tidspunkt.

Hvis du har kommentarer, spørgsmål eller forslag, venligst forlade dem i kommentarer eller e-mail mig.

Ansvarsfraskrivelse:

Jeg gør absolut ingen krav vedrørende dette egnethed til ethvert formål. Bruge på egen risiko.

Installationstrin (der skal følges ved hver WFE i farmen):

1. Hente .zip og pakke.

2. Installere .dll i GAC. Jeg åbne normalt c:\windowsassembly ved hjælp af windows Stifinder og kopi it der.

3. Ændre web.config for at føje samlingen til de sikre objekter:

<System.workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes>

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

4. Kopiere "SpdGenericInterface.actions" til c:\Programmet c:ProgrammerFælles filerMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Bemærk, at denne placering er specifikke for engelsk sprog installationer.

5. Lukke SharePoint Designer (Hvis det er allerede åben).

6. iisreset

7. Åbn SPD, og Opret en ny arbejdsgang.

Hvis alt går vel, du vil blive belønnet med en ny kategori af action:

billede

Noter:

Se Her (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) for en fantastisk overblik over processen til oprettelse af, installation og konfiguration af en løsning på denne.

.zip er designet til at udtrække direkte til dig c:\ kørsel. Hvis du gør dette, Du kan åbne projektet og alle stier vil være i overensstemmelse.

At bruge det i visual studio, du nødt sandsynligvis til at installere "Extensions for Windows WF".

Den oprindelige upload indeholder bare en "togleder funktion", "ToLower()". At tilføje mere funktionalitet, føje det til metoden Execute som vist:

 beskyttet tilsidesætte ActivityExecutionStatus
          Udføre(ActivityExecutionContext executionContext)
        {

            streng functionToDispatch;
            functionToDispatch = Dette.DispatchFunction.ToLower();

            skifte (functionToDispatch)
            {
                sag "tolower()":
                    {
                        Dette.OutResult1 = Dette.InParam1.ToLower();
                        pause;
                    }

                standard:
                    {
                        Dette.OutResult1 = "Ukendt funktion: [" + Dette.DispatchFunction + "].";
                        pause;
                    }
            }

            tilbagevenden ActivityExecutionStatus.Lukket;
        } // ActivityExecutionStatus

    }

Derefter, genopbygge projektet og kopiere assemblyen til GAC. Jeg forventer en iisreset ville være påkrævet.

SPD Workflow brugerdefineret handling – få den <WorkflowInfo> Tag lige at undgå frustration

En del af processen for at oprette en brugerdefineret handling for SharePoint Designer omfatter opretter et ".actions" fil.

Jeg har fundet og forsøgte at bruge en eksempelskabelon, som starter som:

<?XML version="1.0" kodning="UTF-8" ?>
<
WorkflowInfo xmlns="http://schemas.Microsoft.com/SharePoint/">
<
Handlinger Sekventielle="derefter" Parallel="og">

Dog, attributten xmlns forhindrer mine omgivelser fra arbejde. Mine handlinger dukke ikke op i SPD.

Løsningen er at fratage ud xmlns-attribut, gøre en iisreset og luk/re-åbne SPD.

SharePoint Designer, “Indsamle Data fra brugeren” og ved hjælp af disse resultater.

Bruge de "indsamle Data fra brugeren" handling til at oprette og tildele en opgave til en bruger, der beder dem om data. Blandt andet, Jeg har brugt det til at bede en bruger til at godkende eller afvise en anmodning og indtaste nogle kommentarer.

Denne aktion tager form af:

Indsamle data fra denne bruger (Output til Variabel: collect1)

At klikke på data trækker op en serie af dialogbokse, hvor du kan angive, hvilke data brugeren bør give når fuldfører opgaven og denne bruger er indlysende.

Output del (Variabel: collect1) gemmer ID'ET for opgaven. Du bruge dette i din arbejdsgang til at udtrække brugerens faktiske svar via "sammenligne enhver datakilde" betingelse.

Denne betingelse viser som

Hvis felt lig med værdi

Klik på felt og derefter f(x) ikon og det trækker op en anden dialogboks. Brug denne generaliseret dialogboks til at fortælle SPD to ting;

1. Hvad er den liste og kolonne hvis værdi du ønsker at sammenligne.

2. Hvordan bør arbejdsproces motoren Find den specifikke række i listen?

At gøre dette:

  1. Ændre "Source" dropdown at pege på den korrekte opgaveliste. Bemærk, at dialogboksen udvides til at vise en "Find the listeelement" sektion.
  2. I dropdown feltet opslag detaljer, Vælg navnet på det felt, hvis værdi du vil (Dette knytter til hvad du kaldes i dialogboksen indsamle data fra oven).
  3. I "Find listeelementet" sektion, Vælg "opgaver:ID" i feltet dropdown.
  4. I værdifeltet, Klik på f(x). Dette åbner endnu en dialogboks.
  5. Ændre kilden "arbejdsprocesdata"
  6. Marker variablen arbejdsproces, der svarer til "Output til variablen" fra handlingen indsamle data.
  7. Klik på OK/OK og du er færdig.

Det ligner dette for mig:

billede

På dette punkt, Du kan nu bruge denne værdi i din arbejdsproces som kræves.

Supplerende noter:

Som en kort sidebemærkning, Jeg oprette altid en passende navngivet arbejdsprocesvariablen af typen "liste over vare-ID" og bruge det i stedet for auto-genereret "collect1".

Denne "Sammenlign enhver datakilde" dialogboksen sæt bruges i flere forskellige steder i SPD og er værd mastering.

== slutningen

Technorati Tags: