AKTUALIZOVAT: To byla uvolněna na CodePlex zde: http://www.codeplex.com/spdwfextensions
AKTUALIZOVAT: Podívejte se na nejnovější poznámky k verzi: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry
AKTUALIZOVAT: Viz zde pro mé myšlenky na komercializaci tento projekt: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry
Tento projekt obsahuje vlastní aktivity v aplikaci SharePoint Designer. Použít tento vlastní aktivity k vyvolání (odeslání) všechny funkce C#, která začleněn do propojených sestavení.
Od konce října, 2007, To je jen počáteční verze projektu. Mám v plánu rozšířit ji s řadou dalších funkcí, včetně podřetězec, Rejstřík, nahradit, Vyvolání webových služeb a vše, co se zdá být užitečné nebo zajímavé. Také jsem v plánu tento post na codeplex, jakmile mám jednat společně na tomto poli. To bude také nasaditelné řešení v určitém okamžiku.
Pokud máte jakékoliv připomínky, dotazy nebo návrhy, Prosím nechte je v komentářích, nebo napište mi.
Zřeknutí se odpovědnosti:
Vydělávám absolutně žádné nároky týkající se vhodnosti pro jakýkoliv účel. Použijte na vlastní riziko.
Kroky instalace (pro každé WFE v serverové farmě):
1. Stáhněte zip a rozbalte.
2. Nainstalujte soubor knihovny DLL do GAC. Já obvykle otevřené c:\windowsassembly pomocí programu Průzkumník Windows a kopírovat to tam.
3. Upravit soubor web.config přidat sestavení do bezpečných prvků:
<System.Workflow.ComponentModel.WorkflowCompiler>
<hodnotou authorizedTypes><authorizedType shromáždění = "SpdGenericInterface, Verze = 1.0.0.0, Kultura = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Oprávnění = "True" />
4. Kopírovat "SpdGenericInterface.actions" c:\Program FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow
Všimněte si, že výše uvedené umístění je specifický pro anglický jazyk instalace.
5. Ukončete aplikaci SharePoint Designer (Pokud je již otevřen).
6. iisreset
7. Otevřete SPD a vytvořit nový pracovní postup.
Pokud vše půjde dobře, by měl být odměněn s novou kategorii akce:
Poznámky:
Viz Tady (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) úžasný přehled procesu pro vytvoření, instalace a konfigurace řešení jako je tento.
ZIP je navržen tak, aby extrahovat přímo pro vás c:\ jednotka. Pokud použijete tento, můžete otevřít projekt a všechny cesty bude v souladu.
Chcete-li použít v aplikaci visual studio, budete pravděpodobně muset nainstalovat "Rozšíření pro Windows WF".
První upload obsahuje jen jednu "dispečer funkci", "ToLower()". Chcete-li přidat další funkce, přidejte jej do Execute metody, jak je uvedeno:
chráněná přepsat ActivityExecutionStatus Spustit(ActivityExecutionContext executionContext) { řetězec functionToDispatch; functionToDispatch = to.DispatchFunction.ToLower(); spínač (functionToDispatch) { případ "tolower()": { to.OutResult1 = to.InParam1.ToLower(); přestávka; } výchozí: { to.OutResult1 = "Neznámá funkce: [" + to.DispatchFunction + "]."; přestávka; } } návrat ActivityExecutionStatus.Zavřeno; } // ActivityExecutionStatus }
Pak, znovu Sestavte projekt a zkopírujte sestavení GAC. Očekávám, že že iisreset by bylo zapotřebí.
můj Návrhář kon viz to, ale když na to kliknu, nic se zobrazí… Prosím, pomozte… tnx.
Rozhodně to zní jako dobrý nápad. Rád bych se zapojit do použití a testování funkcí. To je pravda, že řetězec funkce jsou omezené v SPD, ale "dynamický řetězec Builder" je dost silný.
<href ="http://dataformwebpart.com">-Monjo </a>
Používám tento vlastní aktivity nahradit() funkce. Farma je SharePoint 2007, s vyrovnávaným zatížením webové front endy. Dostávám občasné selhání spuštění chyby, ale obvykle restartovat pracovní postupy 5 – 15 min. Věřím, že úlohy časovače, Workflow a převzetí pracovních postupů jsou restartování pracovní postupy. Kontroloval jsem protokoly SharePoint, a konečně chytil tuto chybu.
RunWorkflow: Microsoft.SharePoint.SPException:
na Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Řetězec assmNameIn, SPWeb web)
na Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(Identifikátor GUID trackingId, SPWorkflow pracovní)
na Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(Identifikátor GUID trackingId, SPWorkflowHostService hostitel, SPWorkflow pracovní, Kolekce ' 1 události, TimeSpan časový limit)
na Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, SPWorkflow pracovní, Kolekce ' 1 události, SPRunWorkflowOptions runOptions)
Našel jsem odkaz na tuto chybu na jiném blogu, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. Autor naznačil, že on používal vlastní actitivity nahradit(), a také. Viděli jste tuto chybu? Máte nějaké návrhy na to, jak ho vyřešit?
Omlouvám se jsem nikdy neodpověděl. Na místě si, je to pravděpodobně diskutabilní. Doufám, že jste schopni ji vyřešit.