İşlemlerdeki hataları ele alma

Sürecinizin bir parçası olarak hata işlemeyi modellerken, hata ara düzey olaylarını ya da olay alt süreçlerini kullanarak hataları yakalayabilir ve hata bitiş olaylarını kullanarak hata oluşturabilirsiniz.
Tablo 1. Süreçlerde hata olaylarının kullanımı
Olay Açıklama
Bir etkinliğin sınırında icon hata ara düzey olayı (hata sınır olayı)
  • Belirtilen hataları ya da tüm hataları yakalar
  • Bağlı olduğu etkinlik tarafından ortaya çıkan hatalar için hata işleme mantığı sağlar
hata başlatma olayıyla başlayan hata olayı alt süreci icon
  • Belirtilen ya da tüm hataları yakalar
  • Doğrudan hata olayı alt sürecini içeren süreç, alt süreç ya da olay alt süreci etkinlikleri tarafından verilen hatalar için hata işleme mantığı sağlar
Hata bitirme olayı icon Hata verir

Hata ara düzey olaylarını kullanarak hataları yakalama

Süreçler için, bir etkinliğe hata ara düzey olayı ekleyebilir ve bu olayı bir hata işleme akışına ya da etkinliğe bağlayabilirsiniz. Ekli hata olayı, hata sınırı olayı olarak bilinir.

Hemen hata olaylarının kullanılıp kullanılmayacağını belirlemek için aşağıdaki noktaları göz önünde bulundurun:

  • Bir süreç sınırda ekli hata olayı olan bir etkinliği çalıştırırken bir hata oluşursa, süreç hata olayına bağlı sıra çizgisi boyunca akar. Akışta hatalar işlenir ve olağan işlemeye devam eder.
  • Hata ara düzey olayları bir etkinliğe eklenmelidir.
  • Bir etkinlik için birden çok hata olayı olabilir, ancak yalnızca biri hatayı yakalar.
  • Belirli hataları yakalamak için hata verilerini belirtmeyi, yakalanan hata tipleri için hata koduna süzgeç uygulamayı ve hatalar yakalandıktan sonra bir değişkenle eşlemeyi göz önünde bulundurun. Tüm hatalar yakalandığında ya da yalnızca bir hata kodu belirtilirse, hata verileri tw.system.step.error değişkenindeki bir XMLElement içinde yakalanır.
  • Paylaşılan iş nesnelerine ilişkin bir saklama hizmetinde geçerlilik denetimi hatalarını işlemek için, belirli hatalar listesinde bulunan BPMBOSaveFailedError hatasını yakalayın. Bu hata yalnızca yürütme bağlamını otomatik olarak (örneğin, Coach 'lar) kaydeden düğümlerde ya da Yürütme bağlamını kaydet seçeneğinietkinleştirerek belirtik olarak kullanılabilir. Daha fazla bilgi için Paylaşılan iş nesneleri için hizmetlerin saklanmasıbaşlıklı konuya bakın.

Hata olayı alt süreçlerini kullanarak hataları yakalama

Olay alt süreci, üst sürecinin olağan sıra akışının bir parçası olmayan özel bir alt süreç tipidir. Hata olayı alt süreci, hata başlatma olayı içeren bir olay alt sürecidir. Olay alt süreci sıra akışına bağlı değildir ve yalnızca olay alt sürecindeki başlatma olayı tetiklendiğinde çalışır. Sürecinizdeki hataları işlemek için hata olayı alt süreçlerini kullanabilirsiniz.

Hata olayı alt süreçlerinin kullanılıp kullanılmayacağını belirlemek için aşağıdaki noktaları göz önünde bulundurun:
  • Süreçte tanımlamak yerine olay alt sürecinde hata olayını bularak okunabilir bir süreç tanımlayın.
  • Sürecinizdeki birden çok göreve ilişkin hata işleme akışını yeniden kullanmak için olay alt süreçlerini kullanın. Bağlı olayları kullanarak bir hata işleme akışını yeniden kullanmak için, görevlerin her biri için bir ara düzey olay eklemeniz ve bu olayları hata işleme akışına bağlamanız gerekir.
  • Yalnızca olay alt süreci içinden erişebileceğiniz veri nesnelerini tanımlayın. Yalnızca bir alt sürece ait olan veri nesnelerini tanımlayabilirsiniz. Üst süreç gereksiz değişkenlerle karışık değildir.

Olay alt süreçleriyle ilgili daha fazla bilgi için Olay alt süreçlerini modellemebaşlıklı konuya bakın.

Süreç düzeyinde kural dışı durum işleme örneği

Bir süreçte oluşan bir özel durumla ilgili olarak saklanan bilgilere erişmek için tw.system.step.error salt okunur sistem değişkenini kullanabilirsiniz.

Değişken, süreçte değil, bir adımın kapsamında var. Sonraki adımda alınamıyor. Bunun yerine, buna sınır ara düzey kural dışı durumu olayının atama sonrası kısmında erişmeniz gerekir.

Bir kural dışı durumun modellenmesi ve nasıl işleneceğine dair bir örnek aşağıdaki resimde gösterilmiştir:

Bu resim, bir süreç çizgesinde kural dışı durumun nasıl modelleceğini gösterir.

Kural dışı durum verilerini almak için aşağıdaki adımları izleyin:
  1. XMLElement tipinde özel bir değişkeni bildirin; örneğin, tw.local.error. Buna bir değer atayın; örneğin, yeni tw.object.XMLElement("abc").
  2. Eklenen ara düzey kural dışı durum olayı için bir atama sonrası yaratın ve sistem değişkenini adım 1 'de oluşturulan değişkene atayın; örneğin, tw.local.error = tw.system.step.error.

    Yerel değişkendeki değeri, sürecinizin sonraki adımlarında kullanabilirsiniz.

Hatalar yayınlanıyor

Sürecinizde bir hata bitiş olayı kullanarak bir hata kodu belirtebilir ve bir sürecin ya da hizmetin akışından yayınlanan hatalarla ilgili olarak bir hata tipiyle eşleyebilirsiniz.

Hata olaylarıyla ya da olay alt süreçleriyle çalışırken, hataların hemen işlenip işlenemeyeceğini ve normal işlemenin devam edip edemeyeceğini ya da başka bir düzeyde başka bir hata verilip verilemeyeceğini düşünün. Daha sonra aşağıdan yukarıya hata işlemeyi uygulayın. Diğer durumlarda, alt süreç yeniden kullanılabiliyorsa daha verimli ve okunabilir olabilir. Hataların yakalanması ve düzeltilebilmesi için bağlantılı her süreci ve hizmeti oluşturun. Uygulamanın en alt düzeyinde bir düzeltme mümkün değilse, hatanın bir hata olayı içermeyerek bir düzey yukarı taşınmasına izin verebilir ya da hatayı çağıran hizmete ya da sürece (aşağıdaki bölümde gösterildiği gibi) yeniden atmak için bir hata olayı ekleyebilirsiniz.

Örneğin, süreç çalıştırma zamanı sırasında oluşabilecek hataların yakalandığından emin olmak için, ana süreci bağlantılı süreç olarak çağırmak için bir etkinlik içeren üst düzey bir süreç ve daha sonra, aşağıdaki resimde gösterildiği gibi hata işlemeyi uygulamak için temel hizmet içeren bir ek etkinlik oluşturabilirsiniz:

Bu ekran resmi, önceki paragrafta açıklanan sürecin bir şemasını gösterir.

Bu tip tasarım, temel süreçlerden ve hizmetlerden atılan hataların dağıtılmasını ve uygun şekilde işlenmesini sağlar.