Katalog Modułów
Integracja KAMSOFT / KDPN
Synchronizacja maszyna-maszyna eVAN ↔ KAMSOFT (SPX) przez kolejki Oracle AQ — pobrania, płatności, sprawdzacz, proces wsadowy.
Opis modułu w toku — do uzupełnienia do poziomu szczegółowości modułów pogłębionych (Wyniki, Obsługa Zlecenia, Faktury).
Integracja backendowa (brak UI) synchronizująca dane między KAMSOFT (SPX) a eVAN/VAN_DATA przez kolejki Oracle AQ. Kod: model/kamsoft/KDPN/ (kolejki, triggery, subskrybenci) + pakiety KAMSOFT_POBRANIA_PKG, KAMSOFT_ZAPLATY_PKG, KAMSOFT_SPRAWDZACZ_PKG, KAMSOFT_SYNC_BATCH_PKG.
Przepływ (event-driven, AQ)
flowchart TD classDef src fill:#eef1f5,stroke:#5b6b82,color:#16232f; classDef q fill:#eaf1f9,stroke:#1f5fa6,color:#16232f; classDef proc fill:#eef7f0,stroke:#2c7350,color:#16232f; classDef out fill:#fdf4e3,stroke:#9a6b12,color:#16232f; KP["KAM_POB (KAMSOFT)"]:::src --> T1["trigger → POBRANIA_QUEUE"]:::q KZ["KAM_ZAP (KAMSOFT)"]:::src --> T2["trigger → ZAPLATY_QUEUE (prio 3, NLOT/LOTOS)"]:::q SP["paczka W1/W2"]:::src --> T3["SPRAWDZACZ_QUEUE"]:::q T1 --> AQ1["AQ: KAM_POB_ZAPL_QUEUE"]:::q T2 --> AQ1 T3 --> AQ2["AQ: KAM_SPRAWDZACZ_QUEUE"]:::q AQ1 --> S1["subskrybent → dequeue"]:::proc S1 --> P1["KAMSOFT_POBRANIA_PKG.p_set_status"]:::proc S1 --> P2["KAMSOFT_ZAPLATY_PKG.p_execute_data_processing"]:::proc AQ2 --> P3["KAMSOFT_SPRAWDZACZ_PKG.p_execute_process → W1/W2"]:::proc P1 --> D["statusy dokumentów:<br/>PROCESSED_ / SYNCHRONIZED_KAMSOFT"]:::out P2 --> D
Główne przepływy
- Pobrania (US1) — zmiana w
KAM_POB→ trigger →POBRANIA_QUEUE→ enqueue do AQKAM_POB_ZAPL_QUEUE→ subskrybent (KAMSOFT_POBRANIA_AQ_PKG.p_kam_pob_zapl_queue_subscriber/_dequeue) →KAMSOFT_POBRANIA_PKG.p_set_statuszmienia status dokumentów (FAKTURA,FAKTURA_TRA,KARTY_FLOTOWE_FAKTURY,NOTA_KSIEGOWA,WPLATY_WLASNE) naPROCESSED_/SYNCHRONIZED_KAMSOFT. - Płatności (US2) —
KAM_ZAP→ZAPLATY_QUEUE(priorytet 3, obsługaNLOT/LOTOS) → AQ →KAMSOFT_ZAPLATY_PKG.p_execute_data_processing. - Sprawdzacz (US3) —
SPRAWDZACZ_QUEUE→ AQKAM_SPRAWDZACZ_QUEUE→KAMSOFT_SPRAWDZACZ_PKG.p_execute_process→ weryfikacjeW1/W2(KAMSOFT_SYNC_PKG.p_check_W1/W2). - Ponawianie i proces wsadowy (US4) — pozycje błędne (
-1) / nieprzetworzone (0) ponawiane przezp_queue_worker_unload; pełny cykl orkiestrujeKAMSOFT_SYNC_BATCH_PKG(p_create_proc → p_add_data → p_check_data → p_modify_data → p_save_reports → p_delete_data → p_finish_proc), z czyszczeniem historii (30 dni). Łańcuchy DBMS_SCHEDULER:KAMSOFT_POBRANIA/ZAPLATY/SYNCHRONIZACJA_INSTALL. Monitor:KAMSOFT_AQ_MONITOR(RUNNING/WAITING).
Kluczowe obiekty
| Obiekt | Rola |
|---|---|
POBRANIA_QUEUE / ZAPLATY_QUEUE / SPRAWDZACZ_QUEUE | tabele kolejkowe (status 0/1/-1, log błędu) |
KAM_POB / KAM_ZAP / SPRAWDZACZ | interfejsy danych z KAMSOFT |
FAKTURA / FAKTURA_TRA / NOTA_KSIEGOWA / WPLATY_WLASNE | dokumenty aktualizowane |
KAMSOFT_*_PROC/_DET/_SUBPROC/_CNF | struktury procesu wsadowego |
KAMSOFT_AQ_MONITOR | stan kolejek |
Pakiety
KAMSOFT_POBRANIA_PKG/ZAPLATY_PKG w latest/ bywają zakomentowane — aktywna logika żyje w subskrybentach AQ w model/kamsoft/KDPN/. Komunikacja przez dblinki @SPX (DEV/PROD), sekrety pominięte. Do weryfikacji: failover przy niedostępności @SPX, ryzyko blokady KAMSOFT_AQ_MONITOR (FOR UPDATE bez timeoutu), uruchomienie poza instancją evantest (hardkod nazwy w łańcuchach). Źródło: specs/integracja-kamsoft-kdpn/spec.md.