SharePoint Designer — Egendefinerte aktiviteten utføres brukerdefinerte C# funksjoner

OPPDATERINGEN: Dette er blitt befridd å CodePlex her: http://www.codeplex.com/spdwfextensions

OPPDATERINGEN: Se her for seneste produktmerknadene: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry

OPPDATERINGEN: Se her for mine tanker om å kommersialisere dette prosjektet: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry

Dette prosjektet inneholder en egendefinert aktivitet i SharePoint Designer. Bruk denne egendefinerte aktiviteten starte (utsending) en C#-funksjon som du innlemmet i samlingen koblet.

Som i slutten av oktober, 2007, Dette er bare en første versjon av prosjektet. Jeg planlegger å utvide det med en rekke tilleggsfunksjoner, inkludert delstreng, index, Erstatt, bruke webtjenester, og alt som synes nyttig eller interessant. Jeg har også tenkt å legge dette til codeplex når jeg har min handle sammen på den fronten. Dette vil også være deployerbare som en løsning på et tidspunkt.

Hvis du har noen kommentarer, spørsmål eller forslag, Vennligst la dem i kommentarer eller email meg.

Ansvarsfraskrivelse:

Jeg gjør absolutt ikke krav om egnetheten av denne til formål. Bruk på eget ansvar.

Installasjonstrinnene (å bli fulgt for hver WFE i farmen):

1. Last ned zip og pakk.

2. Installere dll i GAC. Jeg åpne vanligvis c:\windowsassembly med windows Utforsker og kopiere det der.

3. Endre web.config for å legge til samlingen sikker kontrollene:

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

<authorizedType montering = "SpdGenericInterface, Versjon = 1.0.0.0, Culture = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Autorisert = "True" />

4. Kopiere "SpdGenericInterface.actions" c:\Programmet FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow

Merk at plasseringen ovenfor gjelder engelsk installasjoner.

5. Lukk SharePoint Designer (Hvis det er åpent).

6. iisreset

7. Åpne SPD og opprette en ny arbeidsflyt.

Hvis alt går bra, du burde bli belønnet med en ny kategori av handlingen:

bilde

Notater:

Se her (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) for en fantastisk oversikt over prosessen for oppretting, installere og konfigurere en løsning som dette.

Zip er utformet for å trekke ut direkte til deg c:\ stasjon. Hvis du gjør dette, Du kan åpne prosjektet og alle banene blir konsekvent.

Bruke dette i visual studio, du nød sannsynligvis å installere "Utvidelser for Windows WF".

Første opplasting inneholder bare én "dispatcher funksjon", "ToLower()". Legge til mer funksjonalitet, legge det til Execute-metoden som vist:

 beskyttet overstyre ActivityExecutionStatus
          Kjøre(ActivityExecutionContext executionContext)
        {

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

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

                standard:
                    {
                        Dette.OutResult1 = "Ukjent funksjon: [" + Dette.DispatchFunction + "].";
                        pause;
                    }
            }

            avkastning ActivityExecutionStatus.Stengt;
        } // ActivityExecutionStatus

    }

Deretter, bygge prosjektet på nytt og kopiere samlingen til GAC. Jeg forventer en iisreset ville være nødvendig.

9 tanker om “SharePoint Designer — Egendefinerte aktiviteten utføres brukerdefinerte C# funksjoner

  1. Gerry Whitworth
    Jeg fulgte hans retning og alt syntes å arbeide til jeg velger handlingen i SP Designer. Designeren ikke lime inn koden i arbeidsflyten. Jeg sendte denne fyren en epost og jeg antar han er for opptatt til å svare.
    Jeg løst problemet selv.
    Tidligere handlinger fra "SpdGenericInterface.actions" i WSS.actions"" filen og alt fungerte. Jeg håper dette hjelper andre.
    Svar
  2. Marco mancinelli
    hei alle sammen,
    noen kan forklare hvilke web.config-filen jeg må endre? Vennligst svar snart.
    Svar
  3. Marco mancinelli
    Det høres bra, men jeg kan ikke installere forlengelsen =(
    min Designer con se det, men når jeg klikker på det ingenting vises… behage hjelpe… tnx.
    Svar
  4. Bernard Lambeth

    Jeg bruker denne egendefinerte aktivitet for å erstatte() funksjonen. Gården er SharePoint 2007, med belastningsfordelt web front-ender. Jeg får intermitterende feil å starte feil, men arbeidsflytene starter vanligvis i 5 – 15 min. Jeg tror tidtakerjobber arbeidsflyt og arbeidsflyt Failover starter arbeidsflytene. Jeg vurderte SharePoint loggene, og til slutt fanget denne feilen.

    RunWorkflow: Microsoft.SharePoint.SPException:
    ved Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Streng assmNameIn, SPWeb web)
    ved Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(Guiden trackingId, SPWorkflow arbeidsflyt)
    ved Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(Guiden trackingId, SPWorkflowHostService vert, SPWorkflow arbeidsflyt, Samling ' 1 hendelser, TimeSpan tidsavbrudd)
    ved Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, SPWorkflow arbeidsflyt, Samling ' 1 hendelser, SPRunWorkflowOptions runOptions)

    Jeg fant en referanse til denne feilen på en annen blogg, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. Forfatteren indikerte han bruker den egendefinerte actitivity erstatte(), også. Du har sett denne feilen? Har du noen forslag om hvordan å løse det?

    Svar
    1. Paul Galvin Post forfatter

      Beklager jeg aldri svarte. På thi's punkt, Det er sannsynligvis moot. Jeg håper du klarte å løse det..

      Svar

legg igjen et svar

e-postadressen din vil ikke offentliggjøres. Obligatoriske felt er merket *