Vai al contenuto

SWN038 - Importazione nuovi clienti

Nome programma SWN038 Linkage section UTILAGPRG - Linkage comune Id processo: 41 Nome processo: NUOVI-CLIENTI Tabelle principali gestite

AREA AREAGATE Direzione
COGGEANA
COGAPPOG
....
ARPCLIECOM <------

Logica generale Sincronizzazione dei nuovi clienti inseriti sul web Esportazione Non gestita Importazione Le applicazioni WEB potranno inserire nuovi clienti su ARPCLIECOM, che saranno importati come clienti ATTENZIONE: Ora la configurazione gestione-schede-areagate non avrà più effetto su questa funzione: le schede anagrafiche possono essere sincronizzate anche in presenza di questa configurazione attiva. Configurazioni possibili

Gruppo Parametro Note
abilita attiva-areaapp
areaapp cod-azienda
areaapp db-conn-string
areaapp agg-postgres-online
clipot tipo-nominativo-anagr-cliente
clipot gestione-schede-areagate

Elaborazione Tipi di segnalazione: Vedi Tipi di segnalazione A - Controllo di esecuzione Vedi Controllo di esecuzione A.1 - Aggiornamento KEEP-ALIVE Per il momento non lo eseguiamo: il keep-alive viene tenuto aggiornato dal thread autonomo di aglancio; se il programma venisse chiamato in "tempo reale" dal programma di gestione, non necessita comunque del keep-alive. A.2 - Apertura A.2.1 Apertura tabelle Tentare l'apertura della tabella da sincronizzare: ARPCLIEC Se fallita inviare una Segnalazione critica e chiudere. C - Importazione aggiornamenti Effettuare una query per estrarre tutti gli elementi aggiornati su APP: SELECT * FROM ARPCLIECOM WHERE a_clcom_azi = azienda AND a_clcom_cliente = " " AND (a_clcom_cra_cod = 0 OR -> Nominativo nuovo in assoluto a_clcom_agg_app = 'A') -> Nominativo già importato come prospect ma con un ordine (in questo caso lo shop imposterà il flag "agg_app") Ogni elemento trovato sarà un nuovo cliente da importare. Potrebbe nascere da un nominativo CRM: in questo caso avrà A_CLCOM_CRA_COD > 0. Controllo presenza di un ordine La provenienza A-CLCOM-PROVENIENZA identifica se il cliente è stato creato da: * "S":Shop e-commerce-> controllare l'esistenza di un ordine per il cliente: * Query su ARPORTES, per verificare se esistono ordini con A_ORTES_ID_UTENTE = A_CLCOM_ID_UTENTE * Se esiste almeno un ordine: procedere con l'importazione C.1 Importazione nuovo cliente * Se non esiste nessun ordine, procedere con l'importazione C.2 Importazione nuovo prospect, se A-CLCOM-CRA-COD = 0 * "A":APP -> procedere con l'importazione direttamente: C.1 Importazione nuovo cliente * " " (Areagate?) -> procedere con l'importazione direttamente: C.1 Importazione nuovo cliente C.1 - Importazione nuovo cliente C.1.1 - Cliente La creazione di un nuovo cliente viene eseguita con una call a "INSANA":

Dato Contenuto
INSANA-TIP "C"
INSANA-COD 0
INSANA-NOM-COD 0
INSANA-NOME A-CLCOM-NOME
INSANA-IND A-CLCOM-IND
INSANA-LOCA A-CLCOM-LOCA
INSANA-CAP A-CLCOM-CAP
INSANA-PROV A-CLCOM-PROV
INSANA-STATO A-CLCOM-STATO
Se lo stato è "IT" o "ITA", lasciare vuoto
INSANA-PIVA A-CLCOM-PIVA (solo la parte numerica)
INSANA-CFIS A-CLCOM-COFI
INSANA-TEL A-CLCOM-TEL
INSANA-FAX " "
INSANA-EMAIL A-CLCOM-EMAIL
INSANA-WEB " "
INSANA-NOTE A-CLCOM-NOTE
INSANA-AGENTE A-CLCOM-AGENTE
INSANA-ZONA A-CLCOM-ZONA
INSANA-TIPOLOGIA A-CLCOM-TIPOLOGIA
INSANA-LATITUDINE A-CLCOM-LATITUDINE
INSANA-LONGITUDINE A-CLCOM-LONGITUDINE
INSANA-COD-NOM A-CLCOM-CRA-COD (se è significativo, crea il cliente agganciandolo al prospect/lead indicato)
INSANA-NOME2 A-CLCOM-NOME2
INSANA-FTE-COD-DEST A-CLCOM-FTE-COD-DEST
INSANA-PEC-PRINCIPALE A-CLCOM-PEC-PRINCIPALE

All'uscita, INSANA-ESITO contiene l'esito dell'operazione. Se "N", registrare il messaggio INSANA-MSG sul log e saltare il resto dell'aggiornamento. Altrimenti INSANA-COD conterrà il codice del cliente creato. C.1.1.1 Altre informazioni cliente Leggere COGGEANA per il cliente creato:

Dato Contenuto
ANA-TIPO "C"
ANA-COD INSANA-COD

e aggiornare alcuni dati non gestiti da INSANA:

Dato Contenuto
ANA-FASCIA-TRF A-CLCOM-FASCIA-TRF
ANA-RIFLISTINO A-CLCOM-LISTINO
ANA-PADRE A-CLCOM-PADRE (2:5)

C.1.2 Creazione scheda CRM Al termine, se A-CLCOM-CRA-COD era vuoto (quindi ho creato l'anagrafica cliente da 0), eseguire una chiamata a CRMS03:

Dato Contenuto
CRMS03-OPE "Aggiorna"
CRMS03-ANA-TIP "C"
CRMS03-ANA-COD INSANA-COD

Questa chiamata crea il nominativo CRM corrispondente al cliente La parte di SWA030 dove veniva acquisita la scheda corrispondente a A-CLCOM-ID-UTENTE qui non sarà riprodotta C.1.3 Aggiornamento destinazione Se i dati di spedizione su ARPCLIECOM sono significativi (almeno A-CLCOM-SPD-NOME e A-CLCOM-SPD-IND), creare una destinazione merce per il cliente appena creato: COGDESTI

Dato Contenuto
DST-ANA-TIP K-ANA-TIPO-CLI
DST-ANA-COD INSANA-COD
DST-ID-TIP "D"
DST-ID-IDX 1
DST-RAG-SOC A-CLCOM-SPD-NOME
DST-IND A-CLCOM-SPD-IND
DST-CAP NUMVAL(A-CLCOM-SPD-CAP)
DST-LOCA A-CLCOM-SPD-LOCA
DST-PROV A-CLCOM-SPD-PROV

COGDEST2

Dato Contenuto
DST2-CHIA1 DST-CHIA1
DST2-NAZIONE A-CLCOM-SPD-STATO
Se lo stato è "IT" o "ITA", lasciare vuoto
DST2-NOTE A-CLCOM-NOTE
Dopo averlo parsato con GESSTR, operazione "CONV-TESTO-IMPORTATO"

C.1.4.1 Aggiornamento "Contatto messaggistica" Se almeno uno dei dati: * A-CLCOM-CONT-M-SMS * A-CLCOM-CONT-M-NOME sono significativi, effettuare la creazione di un contatto:

Dato Contenuto
RIF-TIP "C"
RIF-COD Cercare il primo codice libero su COGRIFER (con COGSAD)
RIF-ANA-TIP "C"
RIF-CODANA INSANA-COD
RIF-NOME A-CLCOM-CONT-M-NOME
RIF-SMS A-CLCOM-CONT-M-SMS
RIF-POSIZIONE *M

C.1.4 Spostamento galleria Se il cliente è stato creato da un nominativo CRM (A-CLCOM-CRA-COD > 0), potrebbe esistere una galleria documenti collegata ad esso. Quindi ora va spostata sotto al nuovo cliente. Tramite un comando sql cercare tutti i documenti presenti sotto alla galleria: SELECT * FROM apcogaridx WHERE a_arx_doc_classe = k-arcott-classe-nominativi-crm AND a_arx_key_oggetto_gest = a_clcom_cra_cod ' Per ciascun record trovato, modificare alcune informazioni all'interno:

Dato Contenuto
A-ARX-OGGETTO-GEST La chiave del cliente appena creato, es: "C00123"
A-ARX-NUMERO-INTERNO Sostituire al codice nominativo il codice cliente;
"000012340001" -> "C001230001"
A-ARX-DOC-CLASSE "AN"
A-ARX-ANA-TIP "C"
A-ARX-ANA-COD Codice cliente inserito

Per ogni documento modificato è necessario spostare anche il documento fisico sulla cartella di AWS: * Da: /classi/AP/00001234 * A: /classi/AN/C00123 C.1.5 Aggiornamento ARPCLIECOM Al termine degli aggiornamenti, salvare su ARPCLIECOM il codice del cliente creato

Dato Contenuto
A-CLCOM-CLIENTE ANA-CHIA

C.1.5.1 Collegamento cliente-nominativo Caso particolare Se la configurazione gestione-schede-areagate è attiva, le schede CRM anagrafiche create sul WEB non vengono sincronizzate con il gestionale. Come conseguenza, dopo l'importazione di un nuovo cliente, con attribuzione del codice ufficiale, e successiva riesportazione del cliente su ARPANAGR (che avviene attraverso SWN070), non verrà aggiornato il codice cliente sul codice nominativo presente su ARPCLIECOM. Quindi: Se la suddetta configurazione è attiva, e A-CLCOM-CRA-COD > 0, è necessario effettuare qui il collegamento: Ricerca nominativo su APCRMANAGR Fare una ricerca diretta su APCRMANAGR, impostando

Dato Contenuto
A-CRA-AZIENDA Azienda attiva
A-CRA-ID-DISPOSITIVO 0
A-CRA-IDD-PROG 0
A-CRA-COD A-CLCOM-CRA-COD

Se il record non viene trovato, scrivere un log critico Es2000 indicando codice cliente e codice nominativo Altrimenti aggiornarlo impostando

Dato Contenuto
A-CRA-TIPO-ANAGR ANA-TIPO
A-CRA-ANA ANA-CHIA

C.1.6 Esportazione nuovo cliente Nel programma originale SWA030 veniva effettuata direttamente la creazione di ARPANAGR. Per ottimizzare il tutto qui non sarà fatta questa operazione: quando sarà pronto il processo di sincronizzazione SWNnnn sui clienti, si potrà eventualmente aggiungere una chiamata diretta a questo citando il codice cliente da esportare. C.2 - Importazione nuovo prospect C.2.1 Prospect Chiamata a CRMS07 con i dati:

Dato Descrizione
CRMS07-OPE "SCRIVI"
CRMS07-TCL Tipologia configurata in tipo-nominativo-anagr-cliente
CRMS07-RAGSOC A-CLCOM-NOME
CRMS07-IND A-CLCOM-IND
CRMS07-CAP A-CLCOM-CAP
CRMS07-LOCA A-CLCOM-LOCA
CRMS07-PROV A-CLCOM-PROV
CRMS07-NAZIONE A-CLCOM-STATO
CRMS07-CF A-CLCOM-COFI
CRMS07-PI A-CLCOM-PIVA
CRMS07-COMUNE 0

Restituirà CRMS07-NOM, che contiene il codice nominativo creato Non sarà necessario acquisire le info della scheda, dato che essendo un nominativo creato da ARPCLIECOM non ci sono. C.2.2 Aggiornamento ARPCLIECOM Al termine degli aggiornamenti, salvare su ARPCLIECOM il codice del nominativo creato

Dato Contenuto
A-CLCOM-CRA-COD CRMS07-NOM

B - Esportazione elementi aggiornati Questa sezione non è gestita in questo programma


Estratto da documentazione interna ClickUp