Dela via


Process för dokumentgodkännande

Exemplet DocumentApprovalProcess visar användningen av många funktioner i Windows Workflow Foundation (WF) och Windows Communication Foundation (WCF). Tillsammans implementerar de ett processscenario för dokumentgodkännande. Ett klientprogram kan skicka dokument för godkännande och godkänna dokument. Det finns ett program för godkännandehanteraren som underlättar kommunikationen mellan klienter och för att framtvinga reglerna för godkännandeprocessen. Godkännandeprocessen är ett arbetsflöde som kan köra flera typer av godkännanden. Det finns aktiviteter för att få ett enskilt godkännande, ett kvorumgodkännande (en procentandel av uppsättningen godkännare) och en komplex godkännandeprocess som består av ett kvorum och ett enskilt godkännande i en sekvens.

Exempelinformation

Följande bild visar arbetsflödet för dokumentgodkännandeprocessen:

A document approval process workflow

Från klientens perspektiv fungerar godkännandeprocessen på följande sätt:

  1. En klient prenumererar på att vara en användare i godkännandeprocesssystemet.

  2. En WCF-klient skickar till en WCF-tjänst som hanteras av godkännandehanterarens program.

  3. Ett unikt användar-ID returneras till klienten. Klienten kan nu delta i godkännandeprocesser.

  4. När en klient har anslutits kan den skicka ett dokument för godkännande med enkla processer, kvorum eller komplexa godkännandeprocesser.

  5. En knapp i klientens gränssnitt klickas och startar en arbetsflödesinstans i en klientarbetsflödestjänstvärd.

  6. Arbetsflödet skickar en begäran om godkännande till godkännandehanterarens program.

  7. Arbetsflödeshanteraren startar ett arbetsflöde på egen sida för att representera en godkännandeprocess.

  8. När arbetsflödet för chefsgodkännande körs skickas resultatet tillbaka till klienten.

  9. Klienten visar resultatet.

  10. En klient kan få en begäran om godkännande och svara på begäran när som helst.

  11. En WCF-tjänst som finns på klienten kan ta emot en begäran om godkännande från godkännandehanterarens program.

  12. Dokumentinformationen visas på klienten för granskning.

  13. Användaren kan godkänna eller avvisa dokumentet.

  14. En WCF-klient används för att skicka ett godkännandesvar tillbaka till godkännandehanterarens program.

Från godkännandehanterarens program fungerar godkännandeprocessen på följande sätt:

  1. En klient begär att få delta i godkännandeprocessen.

  2. En WCF-tjänst i godkännandehanteraren tar emot en begäran om att ingå i godkännandeprocesssystemet.

  3. Ett unikt ID genereras för klienten. Användarinformationen lagras i en databas.

  4. Det unika ID:t skickas tillbaka till användaren.

  5. En begäran om godkännande tas emot. Godkännandehanteraren kör en godkännandeprocess.

  6. En begäran om godkännande tas emot av godkännandehanteraren och startar ett nytt arbetsflöde.

  7. Beroende på typen av begäran (enkel, kvorum eller komplex) körs en annan aktivitet.

  8. Skicka och ta emot aktiviteter med korrelation används för att skicka begäran om godkännande till klienten för granskning och ta emot svaret.

  9. Resultatet av arbetsflödet för godkännandeprocessen skickas till klienten.

Använda exemplet

Så här konfigurerar du databasen

  1. Från en Visual Studio-kommandotolk som öppnas med administratörsbehörighet går du till mappen DocumentApprovalProcess och kör Setup.cmd.

Så här konfigurerar du programmet

  1. Använd Visual Studio och öppna DocumentApprovalProcess.sln lösningsfilen.

  2. Tryck på CTRL+SKIFT+B för att skapa lösningen.

  3. Om du vill köra lösningen startar du programmet Godkännandehanteraren genom att högerklicka på projektet ApprovalManager i Solution Explorer och klicka på Felsöka-Starta> ny instans från högerklicksmenyn.

    Vänta tills chefens utdata meddelar dig att det är klart.

Så här kör du scenariot med enskilt godkännande

  1. Öppna en kommandotolk med administratörsbehörighet.

  2. Navigera till katalogen som innehåller lösningen.

  3. Gå till mappen ApprovalClient\Bin\Debug och kör två instanser av ApprovalClient.exe.

  4. Klicka på Identifiera, vänta tills prenumerationsknappen är aktiverad.

  5. Skriv ett användarnamn och klicka på Prenumerera. För en klient använder du UserType1 och den andra typen UserType2.

  6. I klienten UserType1 väljer du typ av enskilt godkännande i den nedrullningsbara menyn och skriver ett dokumentnamn och innehåll. Klicka på Begär godkännande.

  7. I klienten UserType2 visas ett dokument som väntar på godkännande. Välj den och tryck på Godkänn eller avvisa. Resultatet bör visas i UserType1 klienten.

Så här kör du scenariot för kvorumgodkännande

  1. Öppna en kommandotolk med administratörsbehörighet.

  2. Navigera till katalogen som innehåller lösningen.

  3. Gå till mappen ApprovalClient\Bin\Debug och kör tre instanser av ApprovalClient.exe.

  4. Klicka på Identifiera, vänta tills prenumerationsknappen är aktiverad.

  5. Skriv ett användarnamn och klicka på Prenumerera. För en klientanvändning UserType1 och de andra två typerna UserType2.

  6. UserType1 I klienten väljer du typ av kvorumgodkännande i den nedrullningsbara menyn och skriver ett dokumentnamn och innehåll. Klicka på Begär godkännande. Detta begär att de två UserType2 klienterna godkänner eller avvisar dokumentet. UserType2 Båda klienterna måste svara, men endast en klient måste godkänna dokumentet för att det ska godkännas.

  7. I klienterna UserType2 visas ett dokument som väntar på godkännande. Välj den och tryck på Godkänn eller avvisa. Resultatet bör visas i UserType1 klienten.

Så här kör du scenariot för komplext godkännande

  1. Öppna en kommandotolk med administratörsbehörighet.

  2. Navigera till katalogen som innehåller lösningen.

  3. Gå till mappen ApprovalClient\Bin\Debug och kör fyra instanser av ApprovalClient.exe.

  4. Klicka på Identifiera, vänta tills prenumerationsknappen är aktiverad.

  5. Skriv ett användarnamn och klicka på Prenumerera. För en klient använder UserType1, i två användningstyp UserType2, och i den senaste användningen UserType3.

  6. I klienten UserType1 väljer du typ av enskilt godkännande i den nedrullningsbara menyn och skriver ett dokumentnamn och innehåll. Klicka på Begär godkännande.

  7. I klienterna UserType2 visas ett dokument som väntar på godkännande. Välj den och tryck på Godkänn. Dokumentet skickas UserType3 till klienten.

    Om dokumentet godkänns av det första UserType2 kvorumet skickas dokumentet till UserType3 klienten.

  8. Godkänn eller avvisa dokumentet från UserType3 klienten. Resultatet bör visas i UserType1 klienten.

Så här rensar du

  1. Från en Visual Studio-kommandotolk går du till mappen DocumentApprovalProcess och kör Cleanup.cmd.