Přeskočit na hlavní obsah

SAP Workflow a když předmětný doklad pozbyl platnosti

Nedávno se stalo, že nás zákazník požádal o hlubší pohled a kontrolu jejich implementovaného workflow ke schvalování objednávek (SAP MM). Korporace v Německu ještě v roce 2022 provozuje SAP na historické verzi ABAP 6.20 SP64, což v tomto případě budiž jen zajímavostí a k podivu.

Ve workflow jsme přišli na jednu mezeru: pozbytí platnosti dokladu/objektu po již nastartovaném workflow při čekajícím workitemu ve WF inboxu.

K těmto situacím skutečně dochází, protože založenou objednávku lze později zrušit.

V obecné rovině se běžně stává, že podobný případ při analýze nebyl nepokryt a později se nepokryl ani v implementaci a testování SAP workflow.

Vysvětlíme si řešení na následující vzoru workflow.

Vzor WF s použitím paralelní větve, smyčky a čekání na událost
Vzor WF s použitím paralelní větve a hlídání dvou událostí

Všimněte dvou čekacích kroků umístěných v paralelních větvích (fork). Přímo konkurují regulérnímu dialogovému zpracování, které workflow po organizační struktuře distribuuje.

Oba tyto kroky jsou nastaveny na čekání na dvě BOR/CLASS události a nahrazují provedení požadovaného dialogového zpracování.

Pochopitelně v tomto případě část paralelního zpracování je ukončena splněním v jedné větvi a my v této části pamatujeme na to, aby jedna z větví čekala právě na událost zneplatnění dokladu, tedy na jeho výmaz, storno apod. Můžeme použít i nastavení ukončovací události (terminating event) při dialogovém kroku.

Komentáře