AGGIORNAMENTO: Questo è stato rilasciato in CodePlex qui: http://www.codeplex.com/spdwfextensions
AGGIORNAMENTO: Si veda qui per le ultime note di rilascio: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!381.entry
AGGIORNAMENTO: Vedi qui i miei pensieri sulla commercializzazione di questo progetto: http://paulgalvin.spaces.live.com/blog/cns!1CC1EDB3DAA9B8AA!569.entry
Questo progetto prevede un'attività personalizzata in SharePoint Designer. Utilizzare questa attività personalizzata per richiamare (spedizione) qualsiasi funzione in c# che è incorporato nell'assembly collegati.
Come di fine ottobre, 2007, Questo è solo una versione iniziale del progetto. Ho in programma di espandere il nodo con un numero di funzioni aggiuntive, compresa la sottostringa, indice, sostituire, richiamo di servizi web e tutto ciò che sembra utile o interessante. Ho anche intenzione di questo post di codeplex, una volta che ho il mio agire insieme su questo fronte. Anche questo potrà essere distribuito come una soluzione ad un certo punto.
Se avete dei commenti da fare, domande o suggerimenti, si prega di lasciare commenti o scrivermi.
Dichiarazione di non responsabilità:
Io assolutamente non fanno reclamo dell'idoneità di questo per qualsiasi scopo. Utilizzare a proprio rischio.
Procedura di installazione (da seguire per ogni Web front-end della farm):
1. Scaricare il. zip ed estrarre.
2. Installare il file dll nella GAC. Apro di solito c:\windowsassembly usando il windows explorer e copia esso ci.
3. Modificare il file Web. config per aggiungere l'assembly ai controlli di sicurezza:
<System.Workflow.ComponentModel.WorkflowCompiler>
<authorizedTypes><authorizedType Assembly = "SpdGenericInterface, Version = 1.0.0.0, Cultura = neutral, PublicKeyToken = abe076fd8125f3c4" Namespace = "Nivlag" TypeName = "*" Autorizzato = "True" />
4. Copia "SpdGenericInterface.actions" a c:\Programma FilesCommon FilesMicrosoft Sharedweb server extensions12TEMPLATE1033Workflow
Si noti che la posizione di cui sopra è specifica per installazioni di lingua inglese.
5. Chiudere SharePoint Designer (Se è già aperto).
6. iisreset
7. Aprire SPD e creare un nuovo flusso di lavoro.
Se tutto va bene, si dovrebbe essere ricompensati con una nuova categoria di azione:
Note:
Vedere qui (http://blogs.msdn.com/sharepointdesigner/archive/2007/03/15/adding-activities-to-spd.aspx) per una panoramica terrificante del processo per la creazione di, installazione e configurazione di una soluzione come questa.
Il. zip è stato progettato per estrarre direttamente a voi c:\ in auto. Se si esegue questa operazione, è possibile aprire il progetto e tutti i percorsi sarà coerenti.
Per utilizzare questo in visual studio, probabilmente è necessario installare "Estensioni per Windows WF".
Il caricamento iniziale contiene solo una "funzione dispatcher", "ToLower()". Per aggiungere ulteriori funzionalità, aggiungere al metodo Execute come illustrato:
protetti eseguire l'override ActivityExecutionStatus Eseguire(ActivityExecutionContext classe executionContext) { stringa functionToDispatch; functionToDispatch = Questo.DispatchFunction.ToLower(); interruttore (functionToDispatch) { caso "tolower()": { Questo.OutResult1 = Questo.InParam1.ToLower(); pausa; } impostazione predefinita: { Questo.OutResult1 = "Funzione sconosciuta: [" + Questo.DispatchFunction + "]."; pausa; } } ritorno ActivityExecutionStatus.Chiuso; } // ActivityExecutionStatus }
Poi, ri-costruire il progetto e copiare l'assembly nella global assembly cache. Mi aspettavo che un iisreset sarebbe necessario.
mio progettista imbroglione vedere esso ma quando clicco su di essa nulla appaiono… per favore aiutatemi… tnx.
Sicuramente suona come una buona idea. Piacerebbe partecipare l'utilizzo e la sperimentazione delle funzioni. È vero che le funzioni stringa sono limitate in SPD, ma la "dinamica String Builder" è abbastanza potente.
<href ="http://dataformwebpart.com">-Monjo </un>
Sto usando questa attività personalizzata per sostituire() funzione. L'agriturismo è SharePoint 2007, con front-end web di bilanciamento del carico. Ricevo un errore intermittente per avviare errori, ma i flussi di lavoro in genere riavviare in 5 – 15 min. Credo che i processi timer del flusso di lavoro e flusso di lavoro di Failover riavvia i flussi di lavoro. Ho rivisto i registri di SharePoint, e finalmente catturato questo errore.
RunWorkflow: Microsoft.SharePoint.SPException:
presso Microsoft.SharePoint.Workflow.SPNoCodeXomlCompiler.LoadXomlAssembly(Stringa assmNameIn, SPWeb web)
presso Microsoft.SharePoint.Workflow.SPWinOeHostServices.CreateInstance(GUID trackingId, Flusso di lavoro SPWorkflow)
presso Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(GUID trackingId, SPWorkflowHostService host, Flusso di lavoro SPWorkflow, Eventi di raccolta 1, TimeSpan timeOut)
presso Microsoft.SharePoint.Workflow.SPWorkflowManager.RunWorkflowElev(SPWorkflow originalWorkflow, Flusso di lavoro SPWorkflow, Eventi di raccolta 1, SPRunWorkflowOptions runOptions)
Ho trovato un riferimento a questo errore su un altro blog, http://www.kentd.com/index.php/all-blog/218-nivlag-and-spdgenericinterface. L'autore indicato che stava usando il nterno personalizzato Sostituisci(), pure. Avete visto questo errore? Avete qualche suggerimento su come risolvere il problema?
Mi dispiace non ho mai risposto. Al punto di thi, è probabilmente discutibile. Spero che sei riuscito a risolverlo.