Šiame dokumente aprašomas fono vykdymo srautas: vartotojas paleidžia eksportą arba ataskaitą su filtrais, sistema sukuria užduotį, generavimas vyksta atskirai (eilė per pranešimų brokerį), o paruoštą failą galima atsiųsti per vartotojo užduotis pagal failo nuorodą.
Originali diagrama (sekų / swimlane):

Susiję: automatizavimo scenarijuose — DataExport API ir failai — rivile-erp-automatizavimo-api.html (§4 DataExport, §5 failai). GraphQL šablonai pagal vietą — dataExportTemplatesByActivePlace — rivile-erp-graphql-overview.html. Keliai pagal duomenų kiekį ir trukmę (Reporting / Automation / Data Export / BI) — rivile-erp-duomenu-istraukimas-keliai-ribos.html. Infrastruktūra ir ribos — rivile-erp-infrastruktura-ribos-greitaveika.html. Bendra architektūra (Artemis, servisai) — rivile-erp-architektura-bendra.html.
| Aspektas | Kas svarbu |
|---|---|
| Asinchroniškumas | Naršyklė nelaukia failo generavimo pabaigos: grąžinamas užduoties ID, UI cikliškai tikrina būseną. |
| Atskyrimas (decoupling) | Artemis (pranešimų brokeris) skiria užklausą (ataskaitos paruošimas) nuo vykdymo (Data Export tarnyba). |
| Data Mobility | Centrinė vieta vartotojo užduočių būsenoms ir rezultatui (įskaitant nuorodą į failą). |
| File Management | Atskira paslauga failų saugojimui; rezultatas adresuojamas File Ref, ne tiesioginiu keliu į DB. |
Dalyviai: Vartotojas, ERP FE, Report Preparation, Data Mobility, Artemis.
Dalyviai: Artemis, Data Export, DataBase, File Management, Data Mobility.
SELECT … WHERE … pagal filtrus / šabloną).Dalyviai: Vartotojas, ERP, User Tasks, File Management.
Žemiau — tas pats srautas be swimlane detalių, patogus skaidrėms arba antrai mokymų dienai.
sequenceDiagram
participant V as Vartotojas
participant FE as ERP FE
participant RP as Report Preparation
participant DM as Data Mobility
participant A as Artemis
participant DE as Data Export
participant DB as Database
participant FM as File Management
rect rgb(245, 248, 252)
Note over V,A: 1. Paleidimas ir užduotis
V->>FE: Filtrai, paleisti eksportą
FE->>RP: INIT User Task
RP->>DM: Create User Task
DM->>A: Publish Data Export Preparation
RP-->>FE: Task ID
loop Būsenos tikrinimas
FE->>DM: Get Task STATUS and Result
end
end
rect rgb(252, 248, 245)
Note over A,FM: 2. Foninis generavimas
A->>DE: Data Export Preparation Message
DE->>DM: STATUS In Progress
DE->>DB: SELECT duomenys
DE->>FM: Save file
DE->>DM: Completed + File Reference
end
rect rgb(245, 252, 248)
Note over V,FM: 3. Atsisiuntimas
V->>FE: Vartotojo užduotys
FE->>DM: Download by File Ref
DM->>FM: Get File Content
FM-->>V: Failas
end
fetchExportData — tai kitas kelias nei UI „User Task + failas“; abu tenkina skirtingus naudojimo atvejus.