Procedura dettagliata: Creare ed eseguire il debug di una soluzione flusso di lavoro di SharePoint
Questa procedura dettagliata illustra come creare un modello di flusso di lavoro sequenziale di base. Il flusso di lavoro controlla una proprietà di una raccolta documenti condivisa per determinare se un documento è stato esaminato. Se il documento è stato esaminato, il flusso di lavoro viene completato.
In questa procedura dettagliata sono illustrati i task seguenti:
Creazione di un progetto di flusso di lavoro sequenziale di definizione elenco SharePoint in Visual Studio.
Creazione di attività del flusso di lavoro.
Gestione degli eventi dell'attività del flusso di lavoro.
Nota
Anche se questa procedura dettagliata usa un progetto di flusso di lavoro sequenziale, il processo è identico per un progetto flusso di lavoro della macchina a stati.
Inoltre, il computer potrebbe visualizzare nomi o percorsi diversi per alcuni degli elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per altre informazioni, vedere Personalizzare l'IDE di Visual Studio.
Prerequisiti
Per completare questa procedura dettagliata, è necessario disporre dei componenti seguenti:
Edizioni supportate di Microsoft Windows e SharePoint.
Visual Studio.
Aggiungere proprietà alla raccolta documenti condivisi di SharePoint
Per tenere traccia dello stato di revisione dei documenti nella raccolta Documenti condivisi, verranno create tre nuove proprietà per i documenti condivisi nel sito di SharePoint: Status
, Assignee
e Review Comments
. Queste proprietà vengono definite nella raccolta Documenti condivisi.
Per aggiungere proprietà alla raccolta documenti condivisi di SharePoint
Aprire un sito di SharePoint, ad esempio http://< nome> del sistema/SitePages/Home.aspx, in un Web browser.
Sulla barra di avvio rapido scegliere SharedDocuments.
Scegliere Libreria sulla barra multifunzione Strumenti libreria e quindi scegliere il pulsante Crea colonna sulla barra multifunzione per creare una nuova colonna.
Denominare la colonna Stato documento, impostarne il tipo su Scelta (menu da scegliere), specificare le tre opzioni seguenti e quindi scegliere il pulsante OK :
Revisione necessaria
Revisione completata
Modifiche richieste
Creare altre due colonne e denominarle Assignee e Review Comments.Create two more columns and name them Assignee and Review Comments. Impostare il tipo di colonna Assegnatario come singola riga di testo e il tipo di colonna Rivedi commenti come più righe di testo.
Abilitare la modifica dei documenti senza richiedere un'estrazione
È più semplice testare il modello del flusso di lavoro quando è possibile modificare i documenti senza doverli archiviare. Nella procedura successiva si configura il sito di SharePoint per abilitare tale operazione.
Per consentire la modifica dei documenti senza estrarli
Sulla barra Avvio rapido scegliere il collegamento Documenti condivisi.
Nella barra multifunzione Strumenti raccolta scegliere la scheda Raccolta e quindi scegliere il pulsante Raccolta Impostazioni per visualizzare la pagina raccolta documenti Impostazioni.
Nella sezione Generale Impostazioni scegliere il collegamento Controllo delle versioni Impostazioni per visualizzare la pagina Controllo delle versioni Impostazioni.
Verificare che l'impostazione richiedi che i documenti vengano estratti prima di poter essere modificati è No. In caso contrario, impostarlo su No e quindi scegliere il pulsante OK .
Chiudere il browser.
Creare un progetto di flusso di lavoro sequenziale di SharePoint
Un flusso di lavoro sequenziale è un set di passaggi eseguiti in ordine fino al termine dell'ultima attività. In questa procedura viene creato un flusso di lavoro sequenziale che verrà applicato all'elenco Documenti condivisi. La procedura guidata del flusso di lavoro consente di associare il flusso di lavoro alla definizione del sito o alla definizione dell'elenco e di determinare quando verrà avviato il flusso di lavoro.
Per creare un progetto di flusso di lavoro sequenziale di SharePoint
Avviare Visual Studio.
Nella barra dei menu scegliere File>nuovo>progetto per visualizzare la finestra di dialogo Nuovo progetto.
Espandere il nodo SharePoint in Visual C# o Visual Basic e quindi scegliere il nodo 2010 .
Nel riquadro Modelli scegliere il modello progetto di SharePoint 2010.
Nella casella Nome immettere MySharePointWorkflow e quindi scegliere il pulsante OK.
Verrà visualizzata la Personalizzazione guidata SharePoint.
Nella pagina Specificare il sito e il livello di sicurezza per il debug scegliere il pulsante di opzione Distribuisci come soluzione farm e quindi scegliere il pulsante Fine per accettare il livello di attendibilità e il sito predefinito.
Questo passaggio imposta il livello di attendibilità per la soluzione come soluzione farm, l'unica opzione disponibile per i progetti flusso di lavoro. Per altre informazioni, vedere Considerazioni sulla soluzione in modalità sandbox.
In Esplora soluzioni scegliere il nodo del progetto e quindi sulla barra dei menu scegliere Progetto>Aggiungi nuovo elemento.
In Visual C# o Visual Basic espandere il nodo SharePoint e quindi scegliere il nodo 2010.
Nel riquadro Modelli scegliere il modello Flusso di lavoro sequenziale (solo soluzione farm) e quindi scegliere il pulsante Aggiungi.
Verrà visualizzata la Personalizzazione guidata SharePoint.
Nella pagina Specificare il nome del flusso di lavoro per il debug accettare il nome predefinito (MySharePointWorkflow - Workflow1). Mantenere il valore del tipo di modello del flusso di lavoro predefinito, List Workflow (Elenco flusso di lavoro) e quindi scegliere il pulsante Avanti .
Nella pagina Si desidera che Visual Studio associ automaticamente il flusso di lavoro in una sessione di debug? scegliere il pulsante Avanti per accettare tutte le impostazioni predefinite.
Questo passaggio associa automaticamente il flusso di lavoro alla raccolta Documenti condivisi.
Nella pagina Specificare le condizioni per l'avvio del flusso di lavoro lasciare selezionate le opzioni predefinite nella sezione Come avviare il flusso di lavoro? e scegliere il pulsante Fine.
Questa pagina consente di specificare all'avvio del flusso di lavoro. Per impostazione predefinita, il flusso di lavoro viene avviato quando un utente lo avvia manualmente in SharePoint o quando viene creato un elemento a cui è associato il flusso di lavoro.
Creare attività del flusso di lavoro
I flussi di lavoro contengono una o più attività che rappresentano le azioni da eseguire. Utilizzare la finestra di progettazione del flusso di lavoro per organizzare le attività per un flusso di lavoro. In questa procedura verranno aggiunte due attività al flusso di lavoro: HandleExternalEventActivity e OnWorkFlowItemChanged. Queste attività monitorano lo stato di revisione dei documenti nell'elenco Documenti condivisi
Per creare attività del flusso di lavoro
Il flusso di lavoro deve essere visualizzato nella finestra di progettazione del flusso di lavoro. In caso contrario, aprire Workflow1.cs o Workflow1.vb in Esplora soluzioni.
Nella finestra di progettazione scegliere l'attività OnWorkflowActivated1 .
Nella finestra Proprietà immettere onWorkflowActivated accanto alla proprietà Richiamata e quindi scegliere invio.
Viene aperto l'Editor di codice e viene aggiunto un metodo del gestore eventi denominato onWorkflowActivated al file di codice Workflow1.
Tornare alla finestra di progettazione del flusso di lavoro, aprire la casella degli strumenti e quindi espandere il nodo Windows Workflow v3.0 .
Nel nodo Flusso di lavoro di Windows v3.0 della casella degli strumenti eseguire uno dei seguenti set di passaggi:
Aprire il menu di scelta rapida per l'attività While e quindi scegliere Copia. Nella finestra di progettazione del flusso di lavoro aprire il menu di scelta rapida per la riga sotto l'attività onWorkflowActivated1 e quindi scegliere Incolla.
Trascinare l'attività While dalla casella degli strumenti alla finestra di progettazione del flusso di lavoro e connettere l'attività alla riga sotto l'attività onWorkflowActivated1.
Scegliere l'attività WhileActivity1 .
Nella finestra Proprietà impostare Condizione su Condizione codice.
Espandere la proprietà Condition, immettere isWorkflowPending accanto alla proprietà Condition figlio e quindi scegliere invio.
Viene aperto l'editor di codice e viene aggiunto un metodo denominato isWorkflowPending al file di codice Workflow1.
Tornare alla finestra di progettazione del flusso di lavoro, aprire la casella degli strumenti e quindi espandere il nodo Flusso di lavoro di SharePoint.
Nel nodo Flusso di lavoro di SharePoint della casella degli strumenti eseguire uno dei seguenti set di passaggi:
Aprire il menu di scelta rapida per l'attività OnWorkflowItemChanged e quindi scegliere Copia. Nella finestra di progettazione del flusso di lavoro aprire il menu di scelta rapida per la riga all'interno dell'attività whileActivity1 e quindi scegliere Incolla.
Trascinare l'attività OnWorkflowItemChanged dalla casella degli strumenti alla finestra di progettazione del flusso di lavoro e connettere l'attività alla riga all'interno dell'attività whileActivity1 .
Scegliere l'attività onWorkflowItemChanged1 .
Nella finestra Proprietà impostare le proprietà come illustrato nella tabella seguente.
Proprietà valore Correlationtoken workflowToken Richiamato onWorkflowItemChanged
Gestire gli eventi di attività
Infine, controllare lo stato del documento da ogni attività. Se il documento è stato esaminato, il flusso di lavoro viene completato.
Per gestire gli eventi di attività
In Workflow1.cs o Workflow1.vb aggiungere il campo seguente all'inizio della
Workflow1
classe. Questo campo viene utilizzato in un'attività per determinare se il flusso di lavoro è terminato.Aggiungere il seguente metodo alla classe
Workflow1
. Questo metodo controlla il valore della proprietà dell'elencoDocument Status
Documenti per determinare se il documento è stato esaminato. Se laDocument Status
proprietà è impostata suReview Complete
, il metodo imposta ilworkflowPending
checkStatus
campo su false per indicare che il flusso di lavoro è pronto per il completamento.Aggiungere il codice seguente ai
onWorkflowActivated
metodi eonWorkflowItemChanged
per chiamare ilcheckStatus
metodo . All'avvio del flusso di lavoro, il metodo chiama ilonWorkflowActivated
checkStatus
metodo per determinare se il documento è già stato esaminato. Se non è stato esaminato, il flusso di lavoro continua. Quando il documento viene salvato, ilonWorkflowItemChanged
metodo chiama nuovamente ilcheckStatus
metodo per determinare se il documento è stato esaminato. Mentre ilworkflowPending
campo è impostato su true, il flusso di lavoro continua a essere eseguito.Aggiungere il codice seguente al
isWorkflowPending
metodo per controllare lo stato dellaworkflowPending
proprietà . Ogni volta che il documento viene salvato, l'attività whileActivity1 chiama ilisWorkflowPending
metodo . Questo metodo esamina la Result proprietà dell'oggetto per determinare se l'attività ConditionalEventArgs WhileActivity1 deve continuare o terminare. Se la proprietà è impostata su true, l'attività continua. In caso contrario, l'attività viene completata e il flusso di lavoro termina.Salvare il progetto.
Testare il modello del flusso di lavoro di SharePoint
Quando si avvia il debugger, Visual Studio distribuisce il modello di flusso di lavoro nel server SharePoint e associa il flusso di lavoro all'elenco Documenti condivisi. Per testare il flusso di lavoro, avviare un'istanza del flusso di lavoro da un documento nell'elenco Documenti condivisi.
Per testare il modello del flusso di lavoro di SharePoint
In Workflow1.cs o Workflow1.vb impostare un punto di interruzione accanto al metodo onWorkflowActivated .
Scegliere il tasto F5 per compilare ed eseguire la soluzione.
Viene visualizzato il sito di SharePoint.
Nel riquadro di spostamento in SharePoint scegliere il collegamento Documenti condivisi.
Nella pagina Documenti condivisi scegliere il collegamento Documenti nella scheda Strumenti raccolta e quindi scegliere il pulsante Carica documento.
Nella finestra di dialogo Carica documento scegliere il pulsante Sfoglia, scegliere qualsiasi file di documento, scegliere il pulsante Apri e quindi scegliere il pulsante OK.
In questo modo il documento selezionato viene caricato nell'elenco Documenti condivisi e viene avviato il flusso di lavoro.
In Visual Studio verificare che il debugger si arresti nel punto di interruzione accanto al
onWorkflowActivated
metodo .Scegliere il tasto F5 per continuare l'esecuzione.
È possibile modificare le impostazioni per il documento qui, ma lasciare i valori predefiniti per il momento scegliendo il pulsante Salva .
Verrà visualizzata la pagina Documenti condivisi del sito Web di SharePoint predefinito.
Nella pagina Documenti condivisi verificare che il valore sotto la colonna MySharePointWorkflow - Workflow1 sia impostato su In corso. Indica che il flusso di lavoro è in corso e che il documento è in attesa di revisione.
Nella pagina Documenti condivisi scegliere il documento, scegliere la freccia visualizzata e quindi scegliere la voce di menu Modifica proprietà.
Impostare Stato documento su Rivedi completamento e quindi scegliere il pulsante Salva .
Verrà visualizzata la pagina Documenti condivisi del sito Web di SharePoint predefinito.
Nella pagina Documenti condivisi verificare che il valore sotto la colonna Stato documento sia impostato su Rivedi completamento. Aggiornare la pagina Documenti condivisi e verificare che il valore sotto la colonna MySharePointWorkflow - Workflow1 sia impostato su Completato. Indica che il flusso di lavoro è stato completato e che il documento è stato esaminato.
Passaggi successivi
Per altre informazioni su come creare modelli di flusso di lavoro, vedere questi argomenti:
Per altre informazioni sulle attività del flusso di lavoro di SharePoint, vedere Attività del flusso di lavoro per SharePoint Foundation.
Per altre informazioni sulle attività di Windows Workflow Foundation, vedere Spazio dei nomi System.Workflow.Activities.