2.12. Fluxuri


Un flux poate fi definit ca un ansamblu de pași ce implică oameni și este folosit pentru a automatiza procese economice. Documente, informații sau sarcini sunt pasate de la un participant la altul în funcție de anumite reguli și proceduri. Un flux este compus din noduri (pași) ce conțin acțiuni. Pentru o tranziție intre noduri, opțional, pot exista condiții. Posibilitatea de definire a tranzițiilor multiple de la un nod la altul permite procesarea paralelă, ceea ce duce la modelarea de scenarii complexe folosind funcționalitatea flux de documente.

În SocrateCloud fluxurile se pot gestiona cu ajutorul ferestrelor din meniul Sys Admin -> Reguli Generale -> Workflow
  • Fereastra Fluxuri - conține lista completă de fluxuri din SocrateCloud și permite gestionarea acestora;
  • Fereastra Activități Flux - conține un istoric cu toți pași efectuați, pentru toate fluxurile parcurse;
  • Fereastra Procese Flux - conține un istoric cu toate fluxurile parcurse;
  • Fereastra Responsabili Flux - în aceasta fereastra se definesc persoanele responsabile de fluxuri.

Fluxuri

Fluxurile de tip document se gestionează în fereastra Fluxuri din meniul Sys Admin -> Reguli Generale. Sunt disponibile următoarele câmpuri:
  • Cod CăutareDenumireDescriereComentariu se completează pentru a putea identifica înregistrarea în sistem;
  • Tip Flux - din punct de vedere al modului de declanșare, există următoarele tipuri de fluxuri:
    • "Procesare Document" - sunt acele fluxuri care se declanșează în momentul în care documentul este procesat. Aceste fluxuri pot fi invizibile utilizatorului, în situații de tip introducere document sau pot cel mult solicita utilizatorului să realizeze o anumită acțiune pentru finalizarea procesului;
      • Un Flux de tip Document controlează stările prin care trec toate tipurile de documente și este inițializat automat când un document este procesat. In SocrateCloud fluxurile de tip document sunt predefinite pentru toate tipurile de documente din sistem. Lista completă de fluxuri se poate găsi în fereastra Fluxuri, localizată în meniul Sys Admin -> Reguli Generale.
      • Prin intermediul fluxurilor de tip document utilizatorii pot defini o ierarhie de aprobare;
    • "Valoare Document"sunt acele fluxuri care pot fi declanșate în mod automat atunci când, pentru o înregistrare, la salvare, se îndeplinește o condiție (valoare pe un câmp de pe înregistrarea respectivă).
      • poate fi implementat numai pentru tabele care au coloana ”Processing” ! (dacă un astfel de flux este necesar pentru alte tabele decât cele aferente documentelor, atunci trebuie adăugată, ca și customizare, coloana indicată).
    • "Tutorial" - fluxuri declanșate prin intermediul ferestrei Setup din meniul Unelte. Detalii în Setup;
  • Tabela - tabela aferentă înregistrării care declanșează fluxul;
    • e.g. dacă fluxul se aplică pentru facturi se alege: C_Invoice;
  • Logica ValDOC - condiție pentru activarea unui flux de tip "Valoare Document";
    • condiția este verificată doar în momentul salvării unei înregistrări;
    • exista 2 modalități de definire pentru logica activării:
      • condiție SQL - sintaxa de forma "SQL=" + {condiție SQL de tip WHERE}
        • exemplu: SQL=(Updated=Created AND 1=1) unde Updated și Created reprezintă coloane din tabela selectată
      • condiție context - sintaxă specifică SocrateCloud:
        • format: {expression} [{logic} {expression}]
          • expression: @{context}@{operand}{value} sau @{context}@{operand}@{context}@ sau {value}{operand}{value}
          • logic: OR{|} sau AND{&}
            • Obs: a nu se folosii OR și AND, ci simbolurile din dreapta lor;
          • context: orice context global sau de fereastră;
            • prin fereastră se înțelege fereastra din care este operată înregistrarea care declanșează fluxul;
          • value: număr sau text;
            • textul poate sau nu fi încadrat în ghilimele simple;
          • operand: egal{=}, mai mare{>}, mai mic{<}, nu{!} 
        • exemplu: 
          • @AD_Table_ID@=14 | @Language@!GERGER 
          • @PriceLimit@>10 | @PriceList@>@PriceActual@
          • @Name@>'J'
  • Nivel Acces Date
  • Tip Entitate, Stare Publicare, Versiune, Autor - aceste câmpuri conțin informații despre flux;
  • Responsabil Flux - se selectează un responsabil pentru execuția fluxului. Opțiunile disponibile se definesc în fereastra Responsabili Flux;
  • Prioritate - indică prioritatea cu care fluxurile de acest tip vor fi procesate de către procesorul de flux;
  • Procesor Flux, Background window procesor
  • Valid de la, Valid până la - interval de valabilitate pentru flux;
  • Start Node - se selectează primul nod din flux;
  • Unitate Durată - se selectează o unitate: zi, luna, an, etc. Se utilizează pentru a defini timpul de execuție;
  • Limita Durată - durata maxima permisă (în unitatea selectată) pentru o acțiune înainte de escaladare;
  • Durata, Cost, Working Time, Waiting Time - sunt folosite pentru validarea unui flux;
După completarea câmpurilor necesare, se apasă butonul Validare Flux a valida și salva fluxul.

Noduri

Un nod reprezintă un pas din fluxul document. Definirea unui nod se face în tab-ul Noduri. Sunt disponibile următoarele câmpuri:
  • Tip Entitate - pentru toate nodurile adăugate de utilizator este obligatorie alegerea tipului "User maintained", astfel încât aceste modificări să nu se piardă în procesul de migrare la o versiune nouă;
  • Responsabil Flux - determină modul de selecție a utilizatorului responsabil pentru execuția fluxului (e.g. aprobare). Opțiunile disponibile se definesc în fereastra Responsabili Flux și pot de următoarele tipuri:
    • "Individ" - utilizatorul "individ" este determinat după următoarea regulă, în funcție de tipul documentului (dacă există unul definit pe titular se folosește acesta în locul celui de pe system ”Invoker”):
      • utilizatorul aferent reprezentantului de vânzări completat pe document (e.g. comandă);
      • utilizatorul aferent angajatului completat pe document (e.g. necesar de aprovizionare);
      • utilizatorul care a procesat documentul;
      • Utilizator/contact - dacă se selectează, responsabilul va fi acest utilizator;
      • Invoker Supervisor - dacă se bifează, utilizatorul responsabil va fi supervizorul, definit în fereastra Utilizator, pentru utilizatorul "Individ";
      • rolul utilizatorului trebuie sa aibă acces specific la societatea documentului. Fluxurile nu țin cont de bifa "Acces Toate Soc" setată la nivel de rol. Un rol cu bifa "Acces Toate Soc" poate vizualiza cererile de aprobare dar nu poate aproba documentele respective;
    • "Societate" - utilizatorul responsabil va fi supervizorul, definit în fereastra Societăți, pentru societatea de pe document;
    • "Rol" - orice utilizator cu acest rol va fi responsabil de flux;
    • Observații: 
      • Pentru a putea putea escalada fluxurile de aprobare într-un mod previzibil (ca urmare a depășirii timpului de așteptare), se recomandă a se defini câte un supervizor pentru fiecare rol, societate și utilizator din sistem;
      • Dacă se utilizează mai multe nivele de aprobare multiple, se recomandă a se utiliza câte un rol separat pentru fiecare nivel;
  • Prioritate - indică prioritatea pentru sesizările generate de nod;
  • Start Mode - se selectează felul în care se executa activitatea unui nod:
    • Automatic- este executată automat de către sistem
    • Manual - poate fi executată numai de către un utilizator 
  • Finish Mode - se selectează modul în care este finalizata activitatea unui nod;
  • Join Element - felul în care tranzițiile multiple ce intra în nod sunt procesate:
    • AND - toate tranzițiile ce intră în nod trebuie procesate;
    • XOR - o singură tranziție ce intră în nod trebuie procesată.
  • Split Element - felul în care tranzițiile multiple ce ies din nod sunt procesate:
    • AND - toate tranzițiile ce ies din nod vor fi procesate;
    • XOR -  în funcție de secvență și condiții, doar o singură tranziție ce iese din nod va fi procesată.
  • Acțiune - un nod poate avea următoarele acțiuni: Alegere Utilizator, Acțiune Document, Sub Workflow, Email, Apps Process, Apps Report, Apps Task, Setare Variabila, Fereastra Utilizator, User Form, Așteaptă. In funcție de alegere, fereastra Noduri se va modifica corespunzător:
    • "Acțiune Document" - se poate alege din listă o acțiune document care va determina starea documentului documentului: "Finalizează", Închis, Pregătire, etc
      • este posibilă modificarea stării "Neaprobat" ca stare finală, închisă, fără efecte în sistem!
      • începând cu v16.05 este disponibilă opțiunea "Invalidare", care va trece documentul în starea "Invalid";
      • începând cu v17.05 -  atunci când un document intră în stare Invalid sistemul returnează și Descriere Nod (din Fluxuri/Nod respectiv Descriere Tranziție aferentă nodului care a cauzat intrarea în Invalid - pentru ca utilizatorul să știe de ce nu a putu finaliza documentul. Astfel se pot implementa restricții de completare ale unor câmpuri cu anumite valori. 
    • "Sub Workflow" - pornește un nou flux;
      • Execuție Subflow:
        • "Sincron" 
        • "Asincron"
    • "Setare Variabilă" - valoarea selectată în câmpul Valoare Proprietate va fi setată pentru coloana din tabela aferentă documentului/înregistrării la care se aplică fluxul;
    • "Alegere Utilizator" - responsabilul de flux poate alege, prin intermediul ferestrei Flux Activități, o valoare pentru o coloană din tabela aferentă documentului/înregistrării la care se aplică fluxul;
    • "Așteaptă (Repaus)" - fluxul va fi în stare de repaus pentru perioada de timp introdusă în câmpul Wait Time;
    • "Email" - acest nod va fi utilizat pentru a trimite email-uri către următorii destinatari după cum urmează:
      • emailul trimis va conține un atașament cu documentul de pe care a fost declanșat fluxul, în format PDF;
        • formatul de tipărire implicit este cel de pe tipul de document;
      • bifa ”După finalizare flux” (v16.12) - indică sistemului să aștepte finalizarea fluxului și implicit a documentului și abia apoi să genereze pdf-ul pentru documentul respectiv!
      • Machetă Email - este permisă utilizarea de machete de e-mail în format HTML pentru notificarea escaladărilor. Pentru trimiterea e-mailurilor datorate escaladărilor se folosesc setările de la nivel de titular System!;
        • începând cu v18.09 s-a adăugat posibilitatea obținerii unui link direct către fereastra ”Flux Activități”, cu filtrare pe ID-ul tabelei şi ID-ul înregistrării. Acesta este util în formarea notificărilor pe email, prin intermediul machetelor de email, trimise din nodurile fluxurilor de procesare/aprobare a documentelor. Astfel, direct din email-ul primit se poate accesa fereastra de aprobare a documentelor, cu documentul aferent gata filtrat. Exemplu pentru documentul (tabela) Necesar de Aprovizionare:
          • <a href="https://dev.socratecloud.com/soweb/locale=ro_RO#Workflow$AD_Table_ID=702&Record_ID=@ID@">Click aici pentru aprobare</a>
        • începând cu v18.12 s-a adăugat posibilitatea completării automate în macheta e-mail folosită, a textului introdus ca răspuns de către aprobator. Acesta se adaugă prin parametrul:
          • @*UserMsg@
        Adresă fixă - se completează câmpul "email" cu adresa la care se dorește transmiterea mesajelor.
      • Adresă dinamică: se selectează una din valorile din "Email Recipient" cu următoarele valori & semnificație:
        • Terț Document - trimite mail la toate contactele terțului de pe document care au adresa de email. Numărul acestor poate fi redus, controlat dacă se folosește  Postul. In acest caz va trimite mail doar la contactele terțului de pe document care au în definire același post ca cel completat în Nod;
        • Contacte Terț -  trimite mail (bcc) la toate contactele terțului de pe document (nu doar la contactul de pe document) care au adresa de email + la care Tip Notificare este: Email sau Email + Notificare, și la Reprezentant de pe document (to)
        • Document Owner - în cazul comenzii client, document owner = Reprezentant de pe comanda client;
        • Reprezentant terț document - trimite la reprezentantul legat de tertul de pe document = reprezentantul din definirea terțului;
        • Responsabil flux = Reprezentant  <<Creat de ?>>> document și escaladează la Supervizor Reprezentant;
        • v17.11 - A fost adăugată valoarea ”Aprobatori”, cu ajutorul căreia se va putea trimite un email către toți cei care au aprobat documentul (inclusiv solicitantul) până la nivelul de la care apare respingerea.
    • "Apps Report" - raportul din SocrateCloud completat în câmpul Proces va fi rulat în momentul procesării nodului;
      • tab Parametri - se utilizează pentru a defini parametrii raportului;
      • rapoartele generate prin intermediul unui flux document vor fi disponibile sub formă de atașament PDF în fereastra Mesagerie;
        • dacă se apasă butonul ID înregistrare din fereastra Mesagerie se va deschide documentul de pe care s-a generat atașamentul aceasta nota.  
      • procesarea unui nod de tip "Apps Report" va genera o înregistrare în fereastra Fișiere Atasate;
        • dacă se apasă butonul ID înregistrare din fereastra Fisiere Atasate se va deschide înregistrarea din fereastra Mesagerie unde a fost atașat raportul în format PDF;
  • DuratăCostWorking TimeWaiting Time - sunt folosite pentru escaladarea fluxului şi sunt exprimate în unitatea de măsură stabilită în definiţia fluxului.
Observații:
  • Toate fluxurile de tip document conțin patru noduri standard ce nu pot fi editate: Start, DocPrepare, DocComplete, DocAuto;
  • Începând cu v15.06, textul scris în câmpul "Descriere" de pe nod se va afişa în bara de stare din vizualizarea documentului respectiv, la execuția fluxului.
  • Începând cu v19.06, pe documentul cu noduri de aprobare setat se poate genera un nod ad-hoc, din fereastra Flux Activități, folosind "Cere detalii de la". Documentul este direcționat către un alt utilizator căruia i se cer detalii suplimentare. Acesta poate răspunde cu informațiile respective și returna documentul către inițiatorul cererii. Această acțiune nu reprezintă o aprobare! Pe formularul de aprobări, aceste ”cereri” sunt marcate cu fundal de culoare galbenă pentru a se putea diferenția ușor de celelalte documente de pe fluxul de aprobare. Dacă exsită astfel de cereri, pe lângă cele standard de aprobare, procesarea în calup este limitată, fiind aplicabilă doar dacă se selectează documente spre aprobare! Cererile pentru detalii suplimentare trebuie prelucrate individual.

Tranziții

Pentru a defini un flux sunt necesare reguli de tranziție intre noduri. Acestea se definesc în tab-ul Tranziții. Aici, Următorul Nod poate fi selectat pentru fiecare nod creat.
Reguli de tranziție multiple pot fi definite, permițând procesarea în paralel. Cu ajutorul acestei funcționalități, scenarii complexe de fluxuri pot fi modelate în SocrateCloud.
Câmpul Secvență din tab-ul Tranziții determină ordinea în care tranzițiile sunt procesate. Felul în care acestea sunt procesate este determinat de câmpurile Join Element și Split Element din tab-ul Noduri. Pentru tranziții definite de utilizator secvența trebuie să fie mai mică de 100 !
Căsuța Std User workflow - dacă este selectată, limitază tranziția numai pentru documente cu o stare deschisă (ex: spre aprobare, sau e-mail, dar nu către complete, void etc).
Tip Entitate - pentru toate tranziţiile adăugate de utilizator este obligatorie alegerea tipului "User maintained", astfel încât aceste modificări să nu se piardă în procesul de migrare la o versiune nouă.

Condiții

Pentru orice tranziție se pot seta condiții. O condiție trebuie respectata pentru ca o tranziție intre noduri sa aibă loc. Acestea sunt definite în tab-ul Condiții prin completarea câmpurilor corespunzătoare:
  • Tranziție - tranziția pentru care se verifica condiția;
  • Secvență - ordinea în care condițiile sunt verificate (dacă sunt definite mai multe condiții);
  • And/Or - operatorul logic folosit în condiție (descrie relația intre doua condiții consecutive conform secvenței);
  • Coloană - câmpul al cărui valoare va fi comparata;
  • Operație - operator folosit în condiție (e.g. ">", "<", "=");
  • Valoare - valoarea cu care variabila din coloana este comparată (sunt valori brute, fără posibiltatea de aplicare de conversii funcţie de valuta documentului);
    • pentru comparații cu câmpuri de tip dată singura variantă implementată este cea de tip dată fixă indicată în formatul: yyyy-mm-dd 00:00:00.000
  • Tip Entitate - pentru toate condiţiile adăugate de utilizator este obligatorie alegerea tipului "User maintained", astfel încât aceste modificări să nu se piardă în procesul de migrare la o versiune nouă;

Audit Fluxuri

Procesele de flux reprezintă o instantă a unui flux pentru un document. Procesul începe odată cu crearea documentului și se finalizează când ajunge în nodul final. Fereastra Procese flux afișează toate instanțele unui flux de tip document pentru toate documentele din SocrateCloud. Fiecare înregistrare conține informații despre documentul pe bază, starea fluxului și data la care au fost efectuate toate înregistrările asociate procesului.

Activitățile unui proces de flux reprezintă acțiuile care au loc în cadrul procesului de flux și sunt determinate de nodurile aferente, definite pentru flux. Tab-ul Activități afișează activitățile unui proces de flux. Fereastra Activitati flux (toate) afișează acțivitațile pentru toate procesele de flux.
Pe fereastra Procese Flux, în tab-urile Activităţi şi Evenimente s-a adăugat mesajul opţional scris de aprobator in coloana UserMsg. 

Cu ajutorul butoanlelor Gestiune Proces sau Gestiune activitate este posibilă reluarea sau anularea tranziției în curs de desfașurare pentru un proces de flux. Documentul aferent procesului de flux poate fi vizualizat folosind butonul Id Înregistrare .

Procesor Fluxuri

Procesorul de flux este mecanismul responsabil de executarea acelor activităţi ale fluxurilor care ajung în starea "Suspendat". O activitate ajunge în această stare dacă nodul din definiţia fluxului are o acţiune de tipul:
  • Aşteaptă (Sleep) sau
  • Alegere Utilizator
Dacă în definiţia fluxului nu există astfel de noduri, atunci execuţia fluxului se realizează complet la momentul Finalizării documentului respectiv.
Procesorul de Flux este util doar pentru situaţiile în care avem (definim) fluxuri de tip document la care adăugăm noduri a căror activitate va trebui să aştepte un timp sau o acţiune umană (o aprobare).

Frecvenţa cu care se va seta rularea automată a Procesorului de Flux este dată de unitatea de măsură de timp, cea mai mică folosită, din definirea tuturor fluxurilor de tip document.

Tot la nivel de procesor se pot indica:
  • numărul de zile după care se trimite o alertă de inactivitate ("Inactivity Alert Days");
  • numărul de zile după care se trimite un email de re-notificare ("Reminder Days").
Acestea fiind atinse, procesorul va trimite un email către "Supervisor". Atenţie! utilizatorul indicat aici (implicit "System"), trebuie neapărat să aibă definită adresa de e-mail în fereastra de definire a utilizatorilor.
Pentru ca sistemul să poată trmite e-mail-uri, este obligatorie configurarea datelor de acces aferente serverului de e-mail, în fereastra Titular, atât pentru titularul curent cât și pentru titularul System.


În amănunt, Procesorul de Flux realizează următoarele:

  1. Pornește toate procesele de flux de tip document care:
    • sunt in starea “Pornit”, și 
    • au “Scheduled Start date” = <null> sau < data curentă;
  2. Porneste toate activitațile de flux care:
    • sunt în stare suspendată, și
    • pentru care data “Așteptare Stop” < data curentă, și
    • nodul de flux legat are acțiunea = “Aşteaptă (Sleep)”;
  3. Actualizează prioritatea pentru activitățile de flux care:
    • sunt în stare suspendată, și
    • doar pentru acțiuni cu nodul de flux de tip "Alegere Utilizator" și cu valori indicate pentru “UM Schimbare Prioritate” și “Schimbă Prioritatea” (= schimbare dinamică de prioritate):
      • pornind de la nivelul de prioritate stabilit în definiția nodului (de tip Acțiune utilizator), prioritatea se poate schimba dinamic odată cu fiecare rulare a procesorului de flux.
        • exemplu se poate obține o creștere cu +5 la fiecare rulare a procesorului.
      • se pot seta noduri care să crească cu o prioritate mai mare sau mai mică odată cu fiecare rulare a procesorului de flux.
      • UM indică perioada care, dacă a trecut, duce la creșterea priorității cu valoarea din câmpul ”Schimbă Pioritatea”
  4. Trimite alerte astfel:
    • Alerte de Prioritate - se trimit doar daca “Alertă prioritate” de pe procesorul de flux > 0.
    • Alertele pentru Activități de Flux
      • se trimit doar dacă activitățile:
      • sunt în stare suspendată, și
      • au prioritate >= “Alerta prioritate” de la procesorul de flux, şi
      • data “Ultima alertă” = null sau data “Ultima Alertă” + ”Zile Ramase” (de pe procesor) < data curentă (ultima condiție doar dacă "Zile Ramase” > 0);
      • Alerta se trimite la:
        • “Utilizator/contact” de pe activitate, și
        • “Utilizator/contact” de pe proces flux, și
        • “Supervizor” de pe procesor flux, și
        • “Responsabil flux” de pe activitate flux după cum urmează:
          • dacă responsabilul este de tip "Individ", la utilizator;
          • dacă responsabilul este de tip "Societate", la supervizorul de pe societatea documentului pentru care s-a pornit fluxul;
          • dacă responsabilul este de tip Rol la toți utilizatorii din rol;
          • “Responsabilul flux” de pe proces flux doar dacă a mai fost trimisă cel puțin o alertă înainte (data “Ultima Alertă” de pe activitate de flux are deja valoare) si “Responsabilul flux” de pe proces flux <> “Responsabil flux” de pe activitate flux. Destinatarul final se determină în funcție de tipul de responsabil, ca mai sus.
    • Alerte pentru Expirare timp maxim aşteptare pentru activitate
      • se trimit pentru toate activitățile de flux care:
        • sunt în stare suspendată, și
        • data [“Aşteptare stop” (de pe activitate) - ”Zile Ramase” (de pe procesorul de flux, de pe system)] < data curentă, și
        • data “Ultima alertă” = <null> sau data “Ultima alertă” + ”Zile Ramase” < data curentă (ultima condiție doar dacă "Zile Ramase” > 0), și
        • nodul de flux legat de activitate are acțiunea <> “Asteaptă (Sleep)”
        • Alerta se trimite la:
          • “Utilizator/contact” de pe activitate, și
          • “Utilizator/contact” de pe proces flux, si
          • “Responsabil flux” de pe activitate flux după cum urmează:
            • dacă responsabilul este de tip "Individ", la utilizator;
            • dacă responsabilul este de tip "Societate", la supervizorul de pe societatea documentului pentru care s-a pornit fluxul;
            • dacă responsabilul este de tip "Rol", la toți utilizatorii din rol;
            • “Responsabilul flux” de pe proces flux doar dacă a mai fost trimisă cel puțin o alertă înainte (data “Ultima Alertă” de pe activitate de flux are deja valoare) si “Responsabilul flux” de pe proces flux <> “Responsabil flux” de pe activitate flux. Destinatarul final se determină în funcție de tipul de responsabil ca mai sus;
    • Alerte de inactivitate - se trimit doar dacă “Zile inactivitate” de pe procesorul de flux > 0.
      • se trimit pentru toate activitățile de flux care:
        • sunt in stare suspendată, și
        • (data ultimei actualizări + “Zile inactivitate”) < data curentă, și
        • data “Ultima alerta” = null sau data “Ultima alertă” + ”Zile Rămase” (de pe procesor) < data curentă (ultima condiție doar dacă "Zile Rămase” > 0);
        • Alerta se trimite la:
          • “Utilizator/contact” de pe activitate, și
          • “Utilizator/contact” de pe proces flux, și
          • “Responsabil flux” de pe activitate flux după cum urmează:
            • dacă responsabilul este de tip "Individ", la utilizator;
            • dacă responsabilul este de tip "Societate", la supervizorul de pe societatea documentului pentru care s-a pornit fluxul;
            • dacă responsabilul este de tip "Rol" la toti utilizatorii din rol;
            • “Responsabilul flux” de pe proces flux doar daca a mai fost trimisa cel puțin o alertă înainte (data “Ultima alertă” de pe activitate de flux are deja valoare) și “Responsabilul flux” de pe proces flux <> “Responsabil flux” de pe activitate flux. Destinatarul final se determină în funcție de tipul de responsabil ca mai sus.
  5. Verificare - escaladare aprobări
    • se verifică toate activitățile de flux care:
      • sunt în stare suspendată, și
      • pentru care data “Așteptare Stop” < data curentă, și
      • au acțiunea, de pe nodul de flux legat, de tip "Alegere Utilizator"
    • se determină utilizatorul de pe activitate şi se caută supervizorul pentru a face escaladarea astfel:
      • supervizor direct, sau
      • supervizor societate document, sau
      • supervizor societate părinte al societății document (în conformitate cu definiţiile din "Info Societăţi" !)
    • dacă nu găseşte supervizor -> activitatea şi procesul în întregul său se termină cu starea "abort" (Anulat);
    • dacă găseşte supervizor pune o nouă dată “Aşteptare Stop” = data curentă + “Limită durata” de pe nodul legat de activitate (în UM indicată în definirea fluxului) şi alocă activitatea de aprobare către noul utilizator.