Delen via


Goedkeuringsproces voor documenten

In het DocumentApprovalProcess-voorbeeld ziet u het gebruik van veel WF- (Windows Workflow Foundation) en WCF-functies (Windows Communication Foundation). Samen implementeren ze een scenario voor documentgoedkeuringsproces. Een clienttoepassing kan documenten indienen voor goedkeuring en documenten goedkeuren. Er bestaat een goedkeuringsbeheertoepassing om communicatie tussen clients te vergemakkelijken en de regels van het goedkeuringsproces af te dwingen. Het goedkeuringsproces is een werkstroom die verschillende soorten goedkeuring kan uitvoeren. Er bestaan activiteiten om één goedkeuring te krijgen, een quorumgoedkeuring (een percentage van een set goedkeurders) en een complex goedkeuringsproces dat bestaat uit een quorum en één goedkeuring in een reeks.

Voorbeelddetails

In de volgende afbeelding ziet u de werkstroom voor het goedkeuringsproces voor documenten:

A document approval process workflow

Vanuit het perspectief van de client functioneert het goedkeuringsproces als volgt:

  1. Een client abonneert zich op een gebruiker in het goedkeuringsprocessysteem.

  2. Een WCF-client verzendt naar een WCF-service die wordt gehost door de goedkeuringsbeheertoepassing.

  3. Er wordt een unieke gebruikers-id geretourneerd naar de client. De client kan nu deelnemen aan goedkeuringsprocessen.

  4. Na deelname kan een client een document verzenden voor goedkeuring met behulp van enkele, quorum- of complexe goedkeuringsprocessen.

  5. Er wordt op een knop in de interface van de client geklikt, waarbij een werkstroomexemplaren in een clientwerkstroomservicehost worden gestart.

  6. De werkstroom verzendt een goedkeuringsaanvraag naar de goedkeuringsbeheertoepassing.

  7. De werkstroombeheerder start een werkstroom aan de eigen kant om een goedkeuringsproces weer te geven.

  8. Zodra de goedkeuringswerkstroom van de manager wordt uitgevoerd, worden de resultaten teruggestuurd naar de client.

  9. De resultaten worden weergegeven op de client.

  10. Een client kan een goedkeuringsaanvraag ontvangen en op elk gewenst moment reageren op de aanvraag.

  11. Een WCF-service die op de client wordt gehost, kan een goedkeuringsaanvraag ontvangen van de goedkeuringsbeheertoepassing.

  12. De documentinformatie wordt ter beoordeling op de client gepresenteerd.

  13. De gebruiker kan het document goedkeuren of afwijzen.

  14. Een WCF-client wordt gebruikt om een goedkeuringsreactie terug te sturen naar de goedkeuringsbeheertoepassing.

Vanuit het oogpunt van de goedkeuringsbeheertoepassing functioneert het goedkeuringsproces als volgt:

  1. Een client vraagt om deel te nemen aan het goedkeuringsprocessysteem.

  2. Een WCF-service op de goedkeuringsbeheerder ontvangt een verzoek om deel uit te maken van het goedkeuringsprocessysteem.

  3. Er wordt een unieke id gegenereerd voor de client. De gebruikersgegevens worden opgeslagen in een database.

  4. De unieke id wordt teruggestuurd naar de gebruiker.

  5. Er wordt een goedkeuringsaanvraag ontvangen. De goedkeuringsbeheerder voert een goedkeuringsproces uit.

  6. Er wordt een goedkeuringsaanvraag ontvangen door de goedkeuringsmanager, die een nieuwe werkstroom start.

  7. Afhankelijk van het type aanvraag (eenvoudig, quorum of complex) wordt een andere activiteit uitgevoerd.

  8. Activiteiten voor verzenden en ontvangen met correlatie worden gebruikt om de goedkeuringsaanvraag naar de client te verzenden voor beoordeling en het ontvangen van het antwoord.

  9. Het resultaat van de werkstroom voor het goedkeuringsproces wordt naar de client verzonden.

Het voorbeeld gebruiken

De database instellen

  1. Navigeer vanuit een Visual Studio-opdrachtprompt die is geopend met Beheer istrator-bevoegdheden naar deze map DocumentApprovalProcess en voer Setup.cmd uit.

De toepassing instellen

  1. Open met Visual Studio het DocumentApprovalProcess.sln-oplossingsbestand.

  2. Druk op Ctrl+Shift+B om de oplossing te bouwen.

  3. Als u de oplossing wilt uitvoeren, start u de toepassing Approval Manager door met de rechtermuisknop op het Goedkeuringsmanager-project in Solution Explorer te klikken en in het snelmenu op Nieuwe instantie debug-Start> te klikken.

    Wacht totdat de uitvoer van de manager u laat weten dat deze gereed is.

Het scenario met één goedkeuring uitvoeren

  1. Open een opdrachtprompt met beheerdersmachtigingen.

  2. Navigeer naar de map die de oplossing bevat.

  3. Navigeer naar de map ApprovalClient\Bin\Debug en voer twee exemplaren van ApprovalClient.exe uit.

  4. Klik op Ontdekken, wacht totdat de knop Abonneren is ingeschakeld.

  5. Typ een gebruikersnaam en klik op Abonneren. Gebruik voor de ene client UserType1 en het andere type UserType2.

  6. Selecteer in de UserType1 client het enkele goedkeuringstype in de vervolgkeuzelijst en typ een documentnaam en -inhoud. Klik op Goedkeuring aanvragen.

  7. In de UserType2 client wordt een document weergegeven dat wacht op goedkeuring. Selecteer deze en druk op goedkeuren of afwijzen. De resultaten moeten worden weergegeven in de UserType1 client.

Het scenario voor quorumgoedkeuring uitvoeren

  1. Open een opdrachtprompt met beheerdersmachtigingen.

  2. Navigeer naar de map die de oplossing bevat.

  3. Navigeer naar de map ApprovalClient\Bin\Debug en voer drie exemplaren van ApprovalClient.exe uit.

  4. Klik op Ontdekken, wacht totdat de knop Abonneren is ingeschakeld.

  5. Typ een gebruikersnaam en klik op Abonneren. Voor het ene clientgebruik UserType1 en het andere twee type UserType2.

  6. Selecteer in de UserType1 client het goedkeuringstype quorum in de vervolgkeuzelijst en typ een documentnaam en inhoud. Klik op Goedkeuring aanvragen. Hiermee wordt aangevraagd dat de twee UserType2 clients het document goedkeuren of afwijzen. Hoewel beide UserType2 clients moeten reageren, moet slechts één client het document goedkeuren om het te kunnen goedkeuren.

  7. In de UserType2 clients wordt een document weergegeven dat wacht op goedkeuring. Selecteer deze en druk op goedkeuren of afwijzen. De resultaten moeten worden weergegeven in de UserType1 client.

Het complexe goedkeuringsscenario uitvoeren

  1. Open een opdrachtprompt met beheerdersmachtigingen.

  2. Navigeer naar de map die de oplossing bevat.

  3. Navigeer naar de map ApprovalClient\Bin\Debug en voer vier exemplaren van ApprovalClient.exe uit.

  4. Klik op Ontdekken, wacht totdat de knop Abonneren is ingeschakeld.

  5. Typ een gebruikersnaam en klik op Abonneren. Voor één clientgebruik UserType1, in twee gebruikstypen UserType2en in het laatste gebruik UserType3.

  6. Selecteer in de UserType1 client het enkele goedkeuringstype in de vervolgkeuzelijst en typ een documentnaam en -inhoud. Klik op Goedkeuring aanvragen.

  7. In de UserType2 clients wordt een document weergegeven dat wacht op goedkeuring. Selecteer het en druk op Goedkeuren. Het document wordt doorgegeven aan de UserType3 client.

    Als het document wordt goedgekeurd door het eerste UserType2 quorum, wordt het document doorgegeven aan de UserType3 client.

  8. Het document goedkeuren of afwijzen van de UserType3 client. De resultaten moeten worden weergegeven in de UserType1 client.

Opschonen

  1. Navigeer vanuit een Visual Studio-opdrachtprompt naar de map DocumentApprovalProcess en voer Cleanup.cmd uit.