Bagikan melalui


Proses Persetujuan Dokumen

Sampel DocumentApprovalProcess menunjukkan penggunaan banyak fitur Windows Workflow Foundation (WF) dan Windows Communication Foundation (WCF) bersama-sama. Bersama-sama mereka menerapkan skenario proses persetujuan dokumen. Aplikasi klien dapat mengirimkan dokumen untuk persetujuan dan menyetujui dokumen. Aplikasi manajer persetujuan ada untuk memfasilitasi komunikasi antara klien dan untuk menegakkan aturan proses persetujuan. Proses persetujuan adalah alur kerja yang dapat menjalankan beberapa jenis persetujuan. Aktivitas disediakan untuk mendapatkan persetujuan tunggal, persetujuan kuorum (persentase dari sekelompok pemberi persetujuan), dan proses persetujuan yang kompleks yang terdiri dari kuorum dan persetujuan tunggal secara berurutan.

Detail Sampel

Grafik berikut menunjukkan alur kerja proses persetujuan dokumen:

Alur kerja proses persetujuan dokumen

Dari perspektif klien, proses persetujuan berfungsi sebagai berikut:

  1. Klien berlangganan menjadi pengguna dalam sistem proses persetujuan.

  2. Klien WCF mengirimkan pesan ke layanan WCF yang dijalankan oleh aplikasi manajer persetujuan.

  3. ID pengguna unik dikembalikan ke klien. Klien sekarang dapat berpartisipasi dalam proses persetujuan.

  4. Setelah bergabung, klien dapat mengirim dokumen untuk disetujui menggunakan proses persetujuan tunggal, kuorum, atau kompleks.

  5. Tombol di antarmuka klien diklik, memulai instans alur kerja di Host Layanan Alur Kerja klien.

  6. Alur kerja mengirimkan permintaan persetujuan ke aplikasi manajer persetujuan.

  7. Manajer alur kerja memulai alur kerja di sisinya sendiri untuk mewakili proses persetujuan.

  8. Setelah alur kerja persetujuan manajer dijalankan, hasilnya dikirim kembali ke klien.

  9. Klien menampilkan hasilnya.

  10. Klien mungkin menerima permintaan persetujuan dan menanggapi permintaan kapan saja.

  11. Layanan WCF yang dihosting pada klien dapat menerima permintaan persetujuan dari aplikasi manajer persetujuan.

  12. Informasi dokumen disajikan pada klien untuk ditinjau.

  13. Pengguna dapat menyetujui atau menolak dokumen.

  14. Klien WCF digunakan untuk mengirim respons persetujuan kembali ke aplikasi manajer persetujuan.

Dari sudut pandang aplikasi manajer persetujuan, proses persetujuan berfungsi sebagai berikut:

  1. Klien meminta untuk berpartisipasi ke sistem proses persetujuan.

  2. Layanan WCF pada manajer persetujuan menerima permintaan untuk menjadi bagian dari sistem proses persetujuan.

  3. ID unik dihasilkan untuk klien. Informasi pengguna disimpan dalam database.

  4. ID unik dikirim kembali ke pengguna.

  5. Permintaan persetujuan diterima. Manajer persetujuan menjalankan proses persetujuan.

  6. Permintaan persetujuan diterima oleh manajer persetujuan, memulai alur kerja baru.

  7. Tergantung pada jenis permintaan (sederhana, kuorum, atau kompleks) aktivitas yang berbeda dijalankan.

  8. Aktivitas Kirim dan Terima dengan korelasi digunakan untuk mengirim permintaan persetujuan ke klien untuk ditinjau dan menerima respons.

  9. Hasil alur kerja proses persetujuan dikirim ke klien.

Menggunakan Sampel

Untuk menyiapkan database

  1. Dari perintah Visual Studio yang dibuka dengan hak istimewa Administrator, navigasikan ke folder DocumentApprovalProcess ini dan jalankan Setup.cmd.

Untuk menyiapkan aplikasi

  1. Menggunakan Visual Studio, buka file solusi DocumentApprovalProcess.sln.

  2. Untuk membangun solusi, tekan CTRL+SHIFT+B.

  3. Untuk menjalankan solusi, luncurkan Aplikasi Manajer Persetujuan dengan mengklik kanan proyek ApprovalManager di Penjelajah Solusi dan memilih Debug->mulai instans baru dari menu klik kanan.

    Tunggu output manajer untuk memberi tahu Anda bahwa sudah siap.

Untuk menjalankan skenario persetujuan tunggal

  1. Buka prompt perintah dengan izin administrator.

  2. Navigasi ke direktori yang berisi solusi.

  3. Navigasikan ke ApprovalClient\Bin\Debug folder and execute two instances of ApprovalClient.exe.

  4. Klik temukan, tunggu hingga tombol berlangganan diaktifkan.

  5. Ketik nama pengguna apa pun dan klik berlangganan. Untuk satu klien, gunakan UserType1 dan jenis UserType2lainnya .

  6. UserType1 Di klien, pilih jenis persetujuan tunggal dari menu drop-down dan ketik nama dokumen dan konten. Klik Minta Persetujuan.

  7. Di dalam klien UserType2, muncul dokumen yang menunggu persetujuan. Pilih dan tekan setujui atau tolak. Hasilnya harus ditampilkan di UserType1 klien.

Untuk menjalankan skenario persetujuan kuorum

  1. Buka prompt perintah dengan izin administrator.

  2. Navigasi ke direktori yang berisi solusi.

  3. Navigasikan ke ApprovalClient\Bin\Debug folder and execute three instances of ApprovalClient.exe.

  4. Klik temukan, tunggu hingga tombol berlangganan diaktifkan.

  5. Ketik nama pengguna apa pun dan klik berlangganan. Untuk satu klien UserType1 dan dua jenis UserType2 lainnya.

  6. UserType1 Di klien, pilih jenis persetujuan kuorum dari menu drop-down dan ketik nama dokumen dan konten. Klik Minta Persetujuan. Ini meminta kedua UserType2 klien menyetujui atau menolak dokumen. Meskipun kedua klien UserType2 harus merespons, hanya satu klien yang perlu menyetujui dokumen agar dapat disetujui.

  7. Di klien UserType2, muncul dokumen yang menunggu persetujuan. Pilih dan tekan setujui atau tolak. Hasilnya harus ditampilkan di UserType1 klien.

Untuk menjalankan skenario persetujuan kompleks

  1. Buka prompt perintah dengan izin administrator.

  2. Navigasi ke direktori yang berisi solusi.

  3. Navigasikan ke ApprovalClient\Bin\Debug folder and execute four instances of ApprovalClient.exe.

  4. Klik temukan, tunggu hingga tombol berlangganan diaktifkan.

  5. Ketik nama pengguna apa pun dan klik berlangganan. Untuk satu kali penggunaan gunakan UserType1, dalam dua kali penggunaan, gunakan jenis UserType2, dan dalam penggunaan terakhir gunakan UserType3.

  6. UserType1 Di klien, pilih jenis persetujuan tunggal dari menu drop-down dan ketik nama dokumen dan konten. Klik Minta Persetujuan.

  7. Di klien UserType2, muncul dokumen yang menunggu persetujuan. Pilih dan tekan setujui, dokumen diteruskan ke UserType3 klien.

    Jika dokumen disetujui oleh kuorum pertama UserType2 , dokumen diteruskan ke UserType3 klien.

  8. Setujui atau tolak dokumen dari UserType3 klien. Hasilnya harus ditampilkan di UserType1 klien.

Untuk membersihkan

  1. Dari perintah Visual Studio, navigasikan ke folder DocumentApprovalProcess dan jalankan Cleanup.cmd.