Vai al contenuto

SWA046 - Esportazione postit

Logica generale Import/export di note post-it tra gestionale e database KPN Al momento è previsto solo l'esportazione da gestionale. Ad ogni esportazione saranno aggiornati sulla tabella ARPPOSTIT i seguenti record: * I record modificati dopo l'ultimo aggiornamento eseguito * I record cancellati sul gestionale (sarà alzato il flag di cancellazione) Configurazioni possibili

Gruppo Parametro Note

Elaborazione A - Esportazione post-it Su POSTGRES, tabella APSTATOSYN, leggere il record relativo alla tabella/oggetto da sincronizzare "ARPPOSTIT"; se il record non esiste, crearlo impostando

Dato Contenuto
A_SYN_AZIENDA Codice azienda
A_SYN_TABELLA "ARPPOSTIT"
A_SYN_DA_GES_DATA 0
A_SYN_DA_GES_ORA 0
A_SYN_DA_ID_SINCRO 1

Qui otterremo due informazioni importanti: * Data/ora ultima esportazione da gestionale a postgres (A_SYN_DA_GES_DATA e A_SY_DA_GES_ORA) * Prossimo ID sincronizzazione da memorizzare sulla tabella (A_SYN_ID_SINCRO) A.1 - Ricerca cancellazioni Tramite un comando SQL effettuare la ricerca di tutti i record non cancellati di ARPPOSTIT per l'azienda: "SELECT * FROM arppostit where a_ptt_azi = azienda AND a_ptt_fl_canc <> "C"" Per ciascun record trovato, verificare l'esistenza del record corrispondente su COGPOSTT:

Dato Contenuto
PTT-ANA A-PTT-ANA
PTT-MERCE A-PTT-MERCE
PTT-AREA A-PTT-AREA

Se il record NON esiste, effettuare la cancellazione logica del record su ARPPOSTIT impostando

Dato Contenuto
A-PTT-FL-CANC "C"
A-PTT-ID-SINCRO Id sincro progressivo

A.2 - Importazione post-it aggiornati su WEB Tramite una query estrarre tutti i record per l'azienda in elaborazione aggiornati sul web, quindi aventi A-PTT-AGG-APP = 'A' Per ciascun record eseguire l'inserimento o l'aggiornamento del record corrispondente su COGPOSTT: Ricerca ARPPOSTIT:

Dato Contenuto
PTT-ANA A-PTT-ANA
PTT-MERCE A-PTT-MERCE
PTT-AREA A-PTT-AREA

Se il record non esiste va inserito. Poi confrontare A_PTT_NOTE con PTT-NOTE; se diverso aggiornare:

Dato Contenuto
PTT-NOTE A-PTT-NOTE

A.3 - Ricerca post-it aggiornati Scorrere sequenzialmente tutti i record di COGPOSTT (non esiste una chiave diretta per data/ora aggiornamento) Considerare solo i record dove PTT-DA-DATA + PTT-DA-TIME sono superiori a (A_SYN_DA_GES_DATA + A_SY_DA_GES_ORA) Per ciascun record eseguire la ricerca su ARPPOSTIT:

Dato Contenuto
A-PTT-AZI Codice azienda
A-PTT-ANA PTT-ANA
A-PTT-MERCE PTT-MERCE
A-PTT-AREA PTT-AREA

Se il record non esiste va inserito. Poi confrontare A_PTT_NOTE con PTT-NOTE; se diverso aggiornare:

Dato Contenuto
A-PTT-NOTE PTT-NOTE
A-PTT-FL-CANC " "
A-PTT-ID-SINCRO Id sincro progressivo

B Aggiornamento id syncro contratto Al termine dell'elaborazione, aggiornare il record APSTATOSYN:

Dato Contenuto
A_SYN_AZIENDA Codice azienda
A_SYN_TABELLA "ARPPOSTIT"
A_SYN_DA_ID_SINCRO Ultimo ID sincro aggiornato
A_SYN_DA_GES_DATA Data/ora maggiori trovate sull'ultimo record aggiornato o cancellato
A_SYN_DA_GES_ORA

Estratto da documentazione interna ClickUp