Ana içeriğe geç

Düzeltme ve Yeniden Gönderim Döngüsü Oluşturma

Amaç

Yeni bir süreç iş akışı başlatmadan veya gönderilen form verilerini kaybetmeden, incelenmiş bir isteği değişiklik yapılması için başlatanına geri gönderin.

Neler Öğreneceksiniz

  • bir inceleme aksiyonunu önceki bir kullanıcı görevine yönlendirme
  • istek düzeltildiğinde aynı süreç verilerini yeniden kullanma
  • düzeltme notunu yalnızca geri dönüş yolunda zorunlu kılma
  • hem onay hem yeniden gönderim davranışını doğrulama

Zorluk ve Tahmini Süre

  • Zorluk: Başlangıç
  • Tahmini süre: 20 dakika

Varsayılan Bilgiler

Havuzlar, kullanıcı görevleri, aksiyonlar, rotalar, formlar ve doğrulama grupları hakkında bilgi sahibi olmalısınız.

Gerekli Okumalar

Ön Koşullar

  • bir süreç tanımı oluşturma veya içe aktarma izni
  • role atanabilecek bir test kullanıcısı veya grubu Reviewer rol
  • istek sahibi ve inceleyici sahipliğini ayrı ayrı doğrulamak istiyorsanız iki test kimliği

Örneğe Genel Bakış

Örnek üç görev içerir:

1
2
3
Submit Request ──Submit──> Review Request ──Approve──> Complete Request
      ^                         │
      └────Request Correction───┘

Tüm görevler aynı Request süreç verilerini kullanır. Şuraya geri dönmek Submit Request aynı iş akışını yeniden açar; böylece açıklama ve düzeltme notu kullanılabilir durumda kalır.

Adımlar

Süreç Akışını Oluşturma

  1. Adı şu olan bir havuz oluşturun Correction Loop.
  2. Başlatma görevini ekleyin Submit Request bir Submit aksiyonuyla.
  3. Şu adlı ikinci bir kullanıcı görevine Submit rota oluşturun Review Request.
  4. İnceleme görevine Approve ve Request Correction aksiyonlarını ekleyin.
  5. Şuraya Approve rota oluşturun Complete Request.
  6. Şuraya geri Request Correction rota oluşturun Submit Request.

Geri dönüş rotası düzeltme döngüsüdür. Alt süreç oluşturmaz veya süreç XML'ini kopyalamaz.

İnceleyici Rolünü Yapılandırma

  1. Şu adlı bir rol oluşturun Reviewer.
  2. Rol düzenleyicisi aracılığıyla bir test kullanıcısı veya grubu atayın.
  3. Rolü şuraya atayın Review Request.

İndirilebilir tanımda bilerek sabit bir kimlik bulunmaz. Örneğin alanadları arasında taşınabilir kalması için içe aktardıktan sonra rolü yapılandırın.

Paylaşılan Formu Oluşturma

Kök öğenin altında iki alanı olan bir form oluşturun: Request

  • Description — şu doğrulama grubu tarafından zorunlu kılınır: Submit doğrulama grubu
  • CorrectionNote — şu doğrulama grubu tarafından zorunlu kılınır: Correction doğrulama grubu

Formu üç görevin tümüne atayın.

Göreve Göre Form Bölümü Durumunu Ayarlama

Aynı adlı Request bölümü üç görevin tümünde kullanın. Bölümü şurada varsayılan düzenlenebilir durumda tutun: Submit Request; inceleme ve tamamlama görevlerinde ise Disabled durumuna ayarlayın. Böylece tek bir veri modeli ve form kullanılırken iş akışının her adımında düzenleme sahipliği açıkça belirtilir. Kullanıcı bölümün tamamını görmemeliyse yalnızca Hidden kullanın; alanı gizlemek bir yetkilendirme denetimi değildir.

Doğrulamayı Aksiyonlara Bağlama

  1. Şunun Submit aksiyon doğrulama grubunu şuna ayarlayın Submit.
  2. Şunun Request Correction aksiyon doğrulama grubunu şuna ayarlayın Correction.
  3. Şunu Approve düzeltme notu zorunluluğu olmadan bırakın.

Böylece istek açıklaması, başlatan gönderim yaptığında zorunlu olur; düzeltme notu ise yalnızca inceleyici isteği geri gönderdiğinde zorunlu olur.

Nasıl Çalışır

Bir rota, tamamlanmış bir görevi hedefleyebilir. İş akışı aynı süreç iş akışını ve XML verilerini koruyarak bu görev için yeni bir iş adımı oluşturur. Hedef başlatma görevi olduğu için istek başlatana yeniden ulaşır. Yeniden gönderimden sonra normal Submit rota yeni bir inceleme iş adımı oluşturur.

İnceleyici, sabit kodlanmış bir kullanıcı kimliği yerine bir rol aracılığıyla belirlenir. Bu, kiracılar arası taşınabilirliği korur ve görev grafiğini değiştirmeden atama ilkesinin değiştirilmesine olanak tanır.

Sonucu Doğrulama

  1. Şunu yapılandırın: Reviewer test kimliği için rolü.
  2. Süreci başlatın ve bir istek açıklaması girin.
  3. Şunu seçin: Submit ve şunun Review Request inceleyiciye atandığını ve istek bölümünün salt okunur olduğunu doğrulayın.
  4. Bir düzeltme notu girin ve şunu seçin: Request Correction.
  5. Şunun Submit Request her iki alan da korunmuş ve düzenlenebilir halde başlatana geri döndüğünü doğrulayın.
  6. Açıklamayı güncelleyin ve yeniden gönderin.
  7. İkinci incelemeyi onaylayın ve son görevi tamamlayın.

Hata ve Sınır Durumları

  • Şunu deneyin: Submit açıklama olmadan. Formun şu doğrulama grubunda başarısız olması gerekir: Submit doğrulama grubu.
  • Şunu deneyin: Request Correction düzeltme notu olmadan. Formun şu doğrulama grubunda başarısız olması gerekir: Correction doğrulama grubu.
  • Yapılandırılmamış bir Reviewer rolle test edin. İnceleme görevi sessizce istenmeyen bir kimliğe yönlendirilmemelidir; örneği kullanmadan önce rolü yapılandırın.
  • Düzeltmeyi birden fazla kez gönderin ve her döngünün yinelenen iş akışları oluşturmak yerine tek bir süreç iş akışını koruduğunu doğrulayın.

Güvenlik ve Taşınabilirlik Notları

  • Örnek hiçbir kullanıcı, grup, kiracı, e-posta veya alanadı tanımlayıcısı içermez.
  • Her hedef alanadında bağımsız olarak Reviewer yapılandırın.
  • İnceleme görevini kimin açabileceğini rol ataması belirler; form görünürlüğü bir yetkilendirme sınırı değildir.
  • Üretim kuralının yalnızca form doğrulamasına dayanmaması gerekiyorsa sunucu tarafında rota veya iş sonrası komut dizisi doğrulaması ekleyin.

İndirin ve Kendiniz Deneyin

Düzeltme döngüsü süreç tanımını indirin.

Şunu yapılandırın: Reviewer içe aktardıktan sonra rolü.

Sorun Giderme

  • İnceleme görevinin sahibi yok: Rol düzenleyicisini açın ve şuna bir test kullanıcısı veya grubu atayın: Reviewer.
  • Düzeltme notu zorunlu değil: Alanın şu doğrulama grubunu kullandığını doğrulayın: Correction ve Request Correction aksiyonun aynı grubu seçtiğini.
  • Geri döndükten sonra form verileri boş görünüyor: Tüm görevlerin aynı havuz kökünü ve form veri yollarını kullandığını doğrulayın.
  • Yeni bir süreç iş akışı oluşturuluyor: Aksiyonun şuraya bir rota kullandığını doğrulayın: Submit Request; alt iş akışı veya başlatma komut dizisi kullanmadığını.

Sırada Ne Öğrenmeli?