Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'esempio DocumentApprovalProcess illustra l'uso di molte funzionalità di Windows Workflow Foundation (WF) e Windows Communication Foundation (WCF). Insieme implementano uno scenario di processo di approvazione dei documenti. Un'applicazione client può inviare documenti per l'approvazione e approvare i documenti. Esiste un'applicazione di gestione approvazione per facilitare le comunicazioni tra i client e per applicare le regole del processo di approvazione. Il processo di approvazione è un flusso di lavoro in grado di eseguire diversi tipi di approvazione. Esistono attività per ottenere una singola approvazione, un'approvazione di quorum (una percentuale di un set di approvatori) e un processo di approvazione complesso che si compone di un quorum e una singola approvazione in sequenza.
Dettagli di esempio
L'immagine seguente illustra il flusso di lavoro del processo di approvazione del documento:
Dal punto di vista del client, il processo di approvazione funziona come segue:
Un cliente si iscrive al sistema di approvazione come utente.
Un client WCF invia a un servizio WCF ospitato dall'applicazione del responsabile delle approvazioni.
Viene restituito un ID utente univoco al client. Il client può ora partecipare ai processi di approvazione.
Una volta aggiunto, un client può inviare un documento per l'approvazione usando processi di approvazione singoli, quorum o complessi.
Viene fatto clic su un pulsante nell'interfaccia del client, avviando un'istanza del flusso di lavoro in un host del servizio flusso di lavoro client.
Il flusso di lavoro invia una richiesta di approvazione all'applicazione di gestione approvazione.
Il manager di gestione avvia un flusso di lavoro per suo conto per rappresentare un processo di approvazione.
Una volta eseguito il flusso di lavoro di approvazione del manager, i risultati vengono inviati al client.
Il client visualizza i risultati.
Un client può ricevere una richiesta di approvazione e rispondere alla richiesta in qualsiasi momento.
Un servizio WCF ospitato nel client può ricevere una richiesta di approvazione dall'applicazione di gestione approvazione.
Le informazioni del documento vengono presentate al cliente per la revisione.
L'utente può approvare o rifiutare il documento.
Un client WCF viene usato per inviare una risposta di approvazione all'applicazione di gestione approvazione.
Dal punto di vista dell'applicazione di gestione approvazione, il processo di approvazione funziona come segue:
Un client richiede di partecipare al sistema del processo di approvazione.
Un servizio WCF sul gestore delle approvazioni riceve una richiesta di far parte del sistema del processo di approvazioni.
Viene generato un ID univoco per il client. Le informazioni utente vengono archiviate in un database.
L'ID univoco viene inviato all'utente.
Viene ricevuta una richiesta di approvazione. Il responsabile approvazione esegue un processo di approvazione.
Una richiesta di approvazione viene ricevuta dal responsabile approvazione, avviando un nuovo flusso di lavoro.
A seconda del tipo di richiesta (semplice, quorum o complesso) viene eseguita un'attività diversa.
Le attività di invio e ricezione con correlazione vengono usate per inviare la richiesta di approvazione al client per la revisione e ricevere la risposta.
Il risultato del flusso di lavoro del processo di approvazione viene inviato al client.
Uso dell'esempio
Per configurare il database
- Da un prompt dei comandi di Visual Studio aperto con privilegi di amministratore passare alla cartella DocumentApprovalProcess ed eseguire Setup.cmd.
Per configurare l'applicazione
Usando Visual Studio, aprire il file della soluzione DocumentApprovalProcess.sln.
Per compilare la soluzione, premere CTRL+MAIUSC+B.
Per eseguire la soluzione, avviare l'applicazione Approval Manager facendo clic con il pulsante destro del mouse sul progetto ApprovalManager in Esplora soluzioni e scegliendo Debug-Avvia> nuova istanza dal menu di scelta rapida.
Attendere che l'output del manager indichi che è pronto.
Per eseguire lo scenario di approvazione singola
Aprire un prompt dei comandi con l'autorizzazione di amministratore.
Passare alla directory che contiene la soluzione.
Passare a ApprovalClient\Bin\Debug folder and execute two instances of ApprovalClient.exe.
Fare clic su scoprire, attendere che il pulsante iscriviti sia attivo.
Digitare qualsiasi nome utente e fare clic su Sottoscrivi. Per un cliente, utilizzare
UserType1e l'altro tipoUserType2.UserType1Nel client selezionare il tipo di approvazione singolo dal menu a discesa e digitare un nome e un contenuto del documento. Fare clic su Richiedi approvazione.UserType2Nel client viene visualizzato un documento in attesa dell'approvazione. Selezionarlo e premere approva o rifiuta. I risultati dovrebbero essere visualizzati nelUserType1client.
Per eseguire lo scenario di approvazione del quorum
Aprire un prompt dei comandi con l'autorizzazione di amministratore.
Passare alla directory che contiene la soluzione.
Passare a ApprovalClient\Bin\Debug folder and execute three instances of ApprovalClient.exe.
Fare clic su scoprire, attendere che il pulsante iscriviti sia attivo.
Digitare qualsiasi nome utente e fare clic su Sottoscrivi. Per un client usare
UserType1e gli altri due tipiUserType2.UserType1Nel client selezionare il tipo di approvazione quorum dal menu a discesa e digitare un nome e un contenuto del documento. Fare clic su Richiedi approvazione. Questa richiesta chiede ai dueUserType2clienti di approvare o rifiutare il documento. Mentre entrambiUserType2i client devono rispondere, solo un client deve approvare il documento affinché venga approvato.Nei clienti
UserType2compare un documento in attesa di approvazione. Selezionarlo e premere approva o rifiuta. I risultati dovrebbero essere visualizzati nelUserType1client.
Per eseguire lo scenario complesso di approvazione
Aprire un prompt dei comandi con l'autorizzazione di amministratore.
Passare alla directory che contiene la soluzione.
Passare a ApprovalClient\Bin\Debug folder and execute four instances of ApprovalClient.exe.
Fare clic su scoprire, attendere che il pulsante iscriviti sia attivo.
Digitare qualsiasi nome utente e fare clic su Sottoscrivi. Per un client usare
UserType1, in due usa il tipoUserType2, e nell'ultimo usoUserType3.UserType1Nel client selezionare il tipo di approvazione singolo dal menu a discesa e digitare un nome e un contenuto del documento. Fare clic su Richiedi approvazione.Nei clienti
UserType2compare un documento in attesa di approvazione. Selezionarlo e premere Approva, il documento viene passato alUserType3client.Se il documento viene approvato dal primo
UserType2quorum, il documento viene passato alUserType3client.Approvare o rifiutare il documento dal
UserType3client. I risultati dovrebbero essere visualizzati nelUserType1client.
Per pulire
- Da un prompt dei comandi di Visual Studio passare alla cartella DocumentApprovalProcess ed eseguire Cleanup.cmd.