Vai al contenuto

DFN107 - Esportazione clienti

Posizione nel menu Programma non a menu Linkage section UTILDBFPRG - Linkage comune Id processo: 51107 Nome processo: DFN107 Logica generale Esportazione delle anagrafiche clieni/fornitori aggiornate da gestionale * COGGEANA+altre -> DFANAGR Questo processo funziona in EXPORT Configurazioni possibili

Gruppo Parametro Note
dbfront sincro-attiva
dbfront email-segnalazioni
dbfront db-tipo
dbfront db-conn-string
dbfront db-log-level

Elaborazione Tipi di segnalazione: Vedi Tipi di segnalazione A - Controllo di esecuzione Vedi Controllo di esecuzione B - Apertura B.1 Apertura tabelle Tentare l'apertura della tabella da sincronizzare: DFANAGR. Se fallita inviare una Segnalazione grave e chiudere. Tentare l'apertura della tabella semaforo: DFSEMAFORO. Se fallita inviare una Segnalazione grave e chiudere. B.2 Blocco semaforo Lettura del record DFSEMAFORO:

Nome campo Note
DF_SMF_TABELLA DFANAGR

Se il record non esiste inserirlo. Se risulta bloccato dal gestonale host (DF_SMF_USO_HOST = 1) Informazione sul log e chiudere. Dopodichè aggiornare il semaforo impostando:

Nome campo Note
DF_SMF_USO_AREA 1
DF_SMF_VERSIONE Versione attuale: 1

D - Esportazione Leggere il record ARPSTPRC corrispondente al processo (51107). Da qui otteniamo: * A-STPR-LIMITA-RECORD per sapere se l'elaborazione è limitata a "n" record esportati * A-STPR-LIMITA-ERRORI per sapere se l'elaborazione è limitata a "n" errori trovati * A-STPR-UA-DATA + A-STPR-UA-ORA: data/ora ultima esportazione precedente Si scorrono tutti i record di COGANCAP usando ANC-CHIA4:

Nome campo Contenuto
ANC-DA-DATA A-STPR-UA-DATA
ANC-DA-TIME A-STPR-UA-ORA

Ciascun record letto corrisponde ad un record da esportare Leggere quindi il record COGGEANA collegato D.1 - Ricerca cliente padre Se l'anagrafica ha un cliente padre, deve essere stato già esportato, altrimenti saltare l'importazione del record per il prossimo giro. Quindi se significativo ANA-PADRE, verifichiamo se il record è già stato esportato, con una start su DFANAGR, usando DF_ANA_CHIA3, impostando:

Nome campo Contenuto
DF_ANA-AREA-TIP ANA-TIPO
DF_ANA-AREA-COD ANA-PADRE

Se il record non esiste, il cliente padre non è stato ancora esportato. Quindi skippare il record Altrimenti acquisire il codice host DF-ANA-PADRE-HOST per l'esportazione D.2 - Ricerca anagrafica ed eventuale inserimento Verifichiamo se il record è già stato esportato, con una start su DFANAGR, usando DF_ANA_CHIA3, impostando:

Nome campo Contenuto
DF_ANA-AREA-TIP ANA-TIPO
DF_ANA-AREA-COD ANA-COD

Se un record esiste, allora il cliente è già esistente su DFANAGR, e si aggiorna. Altrimenti va inserito. Leggere quindi i record collegati necessari * COGGEANA * COGAPPOG * COGANAPP D.3 - Aggiornamento anagrafica I dati da aggiornare sono i seguenti:

Nome campo Contenuto
DF_ANA_KEY Verrà creato automaticamente in fase di inserimento (campo autoincrement)
DF_ANA_KEY_HOST In inserimento popolare con ANA-CHIA
DF_ANA_AREA_TIP ANA-TIPO
DF_ANA_AREA_COD ANA-COD
DF_ANA_NOME ANA-NOME
DF_ANA_NOME_2 ANA-NOME2
DF_ANA_INDI ANA-INDI
DF_ANA_CAP AAP-CAP, se significativo, altrimenti ANA-CAP
DF_ANA_LOCA AAP-LOCA, se significativo, altrimenti ANA-LOCA
DF_ANA_PROV ANA-PROV
DF_ANA_COMUNE AAP-COMUNE
DF_ANA_EMAIL ANA-EMAIL
DF_ANA_TEL APP-TEL
DF_ANA_NAZIONE Il "codice host" trovato sulla tabella stati esteri per ANA-ST-COD, se sinificativo, altrimenti ANA-ST-COD
DF_ANA_VAL ANA-VAL
DF_ANA_LISTINO Leggere COGTESLS per con ANA-RIFLISTINO
Se significativo, usare quindi TLS-CODICE-HOST
Altrimenti ANA-RIFLISTINO
DF_ANA_ZONA Il "codice host" EUTA-ZONE-CODICE-HOST trovato sulla tabella zone, usando ANA-ZONA.
Se non significativo usare direttamente ANA-ZONA
DF_ANA_COFI ANA-COFI
DF_ANA_PIVA ANA-PIVA
DF_ANA_PADRE_HOST Il codice host del cliente padre, se esistente
DF_ANA_PAG_COD Cercare il codice di raccordo "codice host" di tipo+codice pagamento, su COGGENER; vedi DFN001
Se trovato, esportare quindi il raccordo GNR-DES
Altrimenti unire ANA-RB + ANA-PAG1
DF_ANA_LATITUDINE ANC-LATITUDINE
DF_ANA_LONGITUDINE ANC-LONGITUDINE
DF_AGENTE Se il cliente è significativo, cercare il record COGANAP2 per l'anagrafica del fornitore collegato.
- AAP2-ANA-TIP = "F"
- AAP2-ANA-COD = ANA-AGENTE
Se trovato, esportare quindi il raccordo AAP2-RACCORDO
Altrimenti esportare direttamente AAP2-CHIA1
DF_ANA_AGG_HOST 0
DF_ANA_AGG_AREA 1

E - Chiusura E.1 Rilascio semaforo Aggiornare il record semaforo relativo a DFANAGR, impostando

Nome campo Note
DF_SMF_USO_AREA 0

E.2 Chiusura tabelle Chiudere le tabelle DFDFANAGR e DFSEMAFORO E.3 Aggiornamento stato Aggiornamento del record ARPSTPRC per il processo 51107, vedi DFN101


Estratto da documentazione interna ClickUp