Un flux de lucru modelează un proces real ca o succesiune de activități care mută o instanță dintr-o stare în alta. Fiecare modul de tip proces din Vision App Maker poate avea un flux, proiectat vizual în App Factory Studio.

Structura unui flux
Un flux este traseul pe care îl urmează instanțele modulului. Este format din stări și activități, legate prin tranziții. Are nevoie de cel puțin o stare și o activitate, iar starea finală poate fi aceeași cu starea de început.
- Stare: un status în care se află instanța, precum Nou, Aprobat sau Respins.
- Activitate: un pas realizat de utilizator sau rulat automat de sistem.
- Tranziție: pornește dintr-o stare, rulează o activitate și duce în una sau mai multe stări noi posibile.
- Decizie: când o tranziție are mai multe stări noi posibile, o decizie o alege pe una dintre ele.
Fluxul se deschide din modul, cu Edit workflow. Designerul afișează stările ca cercuri, activitățile ca dreptunghiuri și deciziile ca romburi, folosind simboluri simplificate de tip BPMN. Diagramele de arhitectură descriu același lanț: o stare, o acțiune, o decizie opțională și una dintre mai multe stări următoare.
Activități
O activitate aparține unui modul și are un nume pentru fiecare limbă a aplicației. Setarea activity state este Persistent, NonPersistent sau PersistentOnView. Cu Persistent, instanța se salvează într-un tabel dedicat, astfel încât platforma reține starea și activitatea în care a rămas fluxul.
O activitate marcată Is automatic rulează printr-un serviciu, fără să fie pornită de un utilizator. Altfel, activitatea afișează unul sau mai multe view-uri. Fiecare view este editabil sau needitabil, poate depinde de o condiție și vine cu un meniu de navigare care poate fi dezactivat.
Stări
O stare are nevoie doar de un nume, plus o etichetă pe fiecare limbă. Stările se definesc în domeniu și sunt reutilizate de mai multe fluxuri. Starea de început și stările finale rezultă din diagramă. O stare cu tranziții de ieșire și fără tranziții de intrare este starea de început; o stare fără tranziții de ieșire este finală. Procesul reține și starea în care încep instanțele noi.
Tranziții
O tranziție se configurează selectând o săgeată de la o stare la o activitate. Are următoarele setări:
| Setare | Rol |
|---|---|
| Bindings | Evenimente executate la tranziție. Fiecare are o țintă (o regulă, un parametru sau un conector), o condiție de disponibilitate, un mesaj de afișat și o opțiune Post execute. Un binding Post execute rulează imediat înainte de efectuarea tranziției. |
| Permissions | Permisiunile care pot încărca activitatea pentru o instanță aflată în această stare. |
| Is default | Instanța intră automat în această tranziție, fără ca utilizatorul să selecteze activitatea. |
| Availability | O condiție care trebuie îndeplinită pentru ca un utilizator să acceseze instanța în această activitate: o regulă, un parametru, o valoare dintr-un conector sau o constantă. |
| Decision rules | Aleg starea în care ajunge fluxul după activitate. |
| Predetermined | Marchează o stare nouă la care se ajunge doar când acțiunea o numește, precum un buton Respinge. |
Cine poate parcurge o tranziție
Mai întâi se verifică permisiunile, apoi disponibilitatea. Permisiunile sunt atașate rolurilor, astfel încât doar utilizatorii ale căror roluri au permisiunea văd tranziția. O tranziție fără permisiuni nu poate fi parcursă de nimeni, inclusiv de administratori.
Cum se alege starea următoare
- Dacă tranziția are o singură stare nouă posibilă, fluxul ajunge în ea.
- Dacă acțiunea numește o stare, fluxul ajunge în acea stare.
- Altfel, se evaluează regulile de decizie pe stările posibile care nu sunt marcate Predetermined.
O singură stare nouă posibilă poate să nu aibă nici regulă de decizie, nici indicatorul Predetermined. Aceasta este starea implicită, de exemplu cea în care se ajunge când utilizatorul doar trimite o aprobare.
Logica din jurul acțiunilor
Diagramele de arhitectură numesc trei momente din jurul unei acțiuni în care poate rula logică configurată: pre-action, post-action și post-endpoint. În configurare, evenimentele de modul rulează logică la începutul și la sfârșitul unei activități și la schimbarea stării fluxului. Regulile pot de asemenea stabili starea următoare, afișa mesaje și iniția alte acțiuni la orice pas.
Capabilitățile proceselor
- Versionare: instanțele deja inițiate continuă pe versiunea anterioară; instanțele noi folosesc versiunea publicată recent.
- Atribuire: sarcinile ajung la utilizatori, roluri sau echipe, pe rute care depind de condiții precum o valoare sau un departament.
- Inbox de sarcini: utilizatorii își filtrează, sortează și caută sarcinile și le aprobă, redirecționează sau finalizează.
- Termene: SLA-uri și termene pe fiecare sarcină, cu alerte la depășirea termenului, și pași programați.
- Automatizare: pași automați bazați pe reguli, instanțe de proces pornite din alte procese și date schimbate cu sisteme externe prin plugin-uri și API-uri.
- Hărți și AI: orice pas poate afișa informații pe o hartă GIS și poate folosi răspunsuri de la componenta AI.
Istoric și audit
Fiecare instanță păstrează istoricul stărilor, cu utilizatorul, data, starea, activitatea și comentariile. Cererile și entitățile păstrează și o listă de audit. Fiecare intrare înregistrează utilizatorul, data, statusul înainte și după acțiune și o descriere.







