Vai al contenuto

Gruppi aziende - Sincronizzazioni, utilita' e gestione AREAGATE

Questa sezione raccoglie i programmi di sincronizzazione manuale (GRS*), le utilita' comuni, la sincronizzazione Area-Postgres (SWA/SWN), la gestione AGLANCIO e le istanze.


Sincronizzazioni manuali

Programmi che, sfruttando la gestione aziende, possono sincronizzare direttamente altre aziende, senza motori intermedi, ma su richiesta diretta di un operatore.

Vedi: * Sincronizzazione nominativi CRM per Plastic Metal / Flli Virginio * Sincronizzazione documenti magazzino e tabelle collegate per Progresso

GRS010 - Sincronizzazione nominativi

Posizione nel menu: Programma non a menu

Sottoprogramma che permette di sincronizzare i nominativi CRM all'interno di un gruppo aziende.

NB: per il momento non sincronizza l'anagrafica cliente/fornitore collegata.

Implementare gia' una gestione log procedura in modo che sia debuggabile con facilita' (vedi GESDEBUG.CPY).


Utilita' comuni

GRSS01 - Ricerca abilitazione azienda ad import/export

Sottoprogramma che ha lo scopo di restituire ad un programma chiamante (un programma GRS*) se l'azienda attiva e' abilitata all'esportazione, e a quali aziende puo' esportare.


Sincronizzazioni con utilizzo abilitazioni

I programmi qui descritti utilizzano anche le abilitazioni previste dalle apposite funzioni.

Diamo per scontato che queste funzioni vengano innescate dall'azienda da cui deve partire una sincronizzazione: se l'azienda non e' abilitata al gruppo di informazioni, allora uscira' senza fare nulla.

Classi di informazioni gestite

Codice Descrizione Gruppo classi Descrizione Programma
A01 Anagrafiche clienti/fornitori ANA-CF Anagrafiche clienti/forni GRSA01
M01 Documenti magazzino generici DOC-MAG Documenti magazzino GRSM01
M02 Causali bolla TAB-MAG Tabelle di magazzino GRSM02
M03 Codici pagamento TAB-MAG Tabelle di magazzino GRSM03
M04 Condizioni pagamento TAB-MAG Tabelle di magazzino GRSM04
M05 Brand TAB-MAG Tabelle di magazzino GRSM05
M06 Magazzini principali (sedi) TAB-MAG Tabelle di magazzino GRSM06
M07 Magazzini secondari TAB-MAG Tabelle di magazzino GRSM07
M08 Merci e prestazioni MERCI Merci e prestazioni GRSM08

Note su gestione log

Le scritture avvengono sull'ambiente origine, a meno che non si agisca sulle variabili di ambiente che governano l'apertura dei files: * I nomi dei file di log usano come prefisso EXT-LOG-DIR

Per il momento e' consigliabile non modificare EXT-LOG-DIR e disattivare la scrittura del log di tabelle durante la sincronizzazione.

Preparazione ambienti e attivazione sincronizzazione

Parametri su anagrafica azienda: * Azienda "Attiva" * "Percorso base azienda": deve contenere il percorso degli archivi dell'azienda * "Path ID azienda": parte del percorso base che identifica l'azienda stessa

Abilitazioni: * L'azienda che esporta deve appartenere ad un gruppo aziende abilitato all'esportazione * L'azienda che importa deve avere il flag "Importazione" attivo

Sincronizzazione iniziale: programma GRSTART con approccio 2.b (GRSTART esegue il loop e innesca il sottoprogramma "n" volte).


Programmi di sincronizzazione (GRS*)

GRS000 - Schedulazione di sincronizzazioni

Programma per la sincronizzazione differita tra aziende del gruppo. Viene completamente revisionato come schedulatore di sincronizzazioni (Edit 07/12/2023).

Il processo parte solo se la configurazione gruppo-aziende e' attiva.

GRSM01 - Sincronizzazione documenti di magazzino

Sincronizza i documenti di magazzino tra le aziende del gruppo (prevista anche la cancellazione fisica). I magazzini nelle aziende del gruppo dovranno avere lo stesso codice.

Logica di distribuzione: da Gruppo (dove vengono inseriti i documenti) a una singola Consorziata (quella relativa all'azienda collegata al documento).

I dati relativi a lotti e/o serial number non saranno sincronizzati.

GRSM02 - Sincronizzazione tabelle

Sincronizza la tabella di raccordo tra aliquote IVA e articoli esenzione.

GRSM03 - Sincronizzazione codici di pagamento

Sincronizza la tabella di raccordo tra aliquote IVA e articoli esenzione, tramite la lettura del log di aggiornamento.

GRSM04 - Sincronizzazione condizioni di pagamento

Sincronizza le condizioni di pagamento (prevista cancellazione fisica). Stesso codice tra aziende del gruppo.

GRSM05 - Sincronizzazione brand

Sincronizza le causali bolla (prevista cancellazione fisica). Stesso codice tra aziende del gruppo.

GRSM06 - Sincronizzazione magazzini principali

Sincronizza i magazzini principali (prevista cancellazione fisica). Stesso codice/perform.

GRSM07 - Sincronizzazione magazzini secondari

Sincronizza i magazzini secondari (prevista cancellazione fisica). Stesso codice/perform.

GRSM08 - Sincronizzazione merci e prestazioni

Sincronizza le merci (prevista cancellazione fisica). Stesso codice/perform.

GRSM09 - Sincronizzazione tabelle CMA

Sincronizza il contenuto delle tabelle "CMA" (prevista cancellazione fisica). Per il momento solo aggiornamento di una tabella completa.

GRSM10 - Sincronizzazione dati locali aziende

Sincronizza i dati relativi alle "aziende gruppo" che non sono contenuti in GRPAZIEN (che non va sincronizzato in quanto tabella comune).

Se GRSM10-AZIENDA e' valorizzato, tra le aziende restituite da GRSS01 considerare solo questa.

GRSA01 - Sincronizzazione clienti e fornitori

Sincronizza le anagrafiche clienti/fornitori (prevista cancellazione fisica).

GRSTART - Allineamento iniziale azienda

Programma da eseguire una-tantum ogni volta che una nuova azienda deve essere sincronizzata. Esegue un loop sugli oggetti interessati e forza la sincronizzazione tramite chiamata al sottoprogramma per ciascun oggetto.

UTILGRSYNC - Linkage comune

Tipo Dato Formato Contenuto
INPUT GRSYNC-OPE x(20) Operazione (usato nei processi con giro di controllo record cancellati)
GRSYNC-KEY x(256) Chiave da elaborare
GRSYNC-DATA 9(08) Data/ora da cui iniziare la sincronizzazione
GRSYNC-ORA 9(08)
GRSYNC-AZIENDA-A x(04) Azienda su cui sincronizzare
GRSYNC-PATH-DA x(20) Path univoco azienda di partenza
GRSYNC-PATH-A x(20) Path univoco azienda di destinazione
FILLER x(500)

Nuova modalita' con gestione istanze

Per rendere piu' flessibile la nuova modalita' di sincronizzazione, si introduce il concetto delle istanze: la possibilita' di lanciare piu' sessioni contemporanee di AGLANCIO, ognuna eseguira' i processi marcati con quella istanza.

L'istanza e' definita con un codice numerico da 0 a 99.

Istanze riservate

Le istanze >= 90 sono riservate:

ID istanza Descrizione Id processo dedicati Classe istanza Note
0..79 Istanze standard W (Sync std) Processi standard
80..89 Processi "a schedulazione fissa" F (Sched fisse) Processi a schedulazioni fisse non in altre istanze speciali
90 Processi di pulizia 40000->49999 P (Pulizie)
91 Processi customizzati >90000 C (Custom) Creati come "non attivi" (specifici per un cliente)
92 Sincronizzazioni con SW-ING 50000->50999 S (Sync Swing) Creati come "non attivi"
99 Sincronizzazioni con db frontiera 51000->51999 F (Sync DBF) Creati come "non attivi"

Processi senza istanza: 100000->199999 (web-service di connessione con il db C00000).

Tabelle interessate all'operazione

Tabella Contenuto
ARPAZIEN Record per azienda; informazioni generali e statistiche
ISTANZESYNC Un record per ciascuna istanza per azienda, con dati statistici e keepalive specifico
ARPSTPRC Una riga per ciascun processo/azienda (rimane invariata)
AGLSTORICOISTANZA Record per azienda/istanza/data con dati statistici

Gestione accensione/spegnimento AGLANCIO (con istanze)

Il motore AGLANCIO viene eseguito sul server usando WRUN32 (Windows) o RUNCBL (Linux).

GESSTPRC effettuera' l'operazione su tutte le istanze presenti.

Files di controllo (con suffisso "-ist" per il numero istanza):

File Descrizione
aglancio-alive-ist.txt Indica che l'istanza e' attiva
aglancio-check-ist.txt Usato dallo script per verificare attivita'
aglancio-spegni-ist.txt Richiesta di spegnimento per l'istanza
aglancio-accendi-ist.txt Richiesta di accensione per l'istanza
aglancio-restaspento-ist.txt Evita l'accensione automatica
aglancio-versione.txt Contiene la versione script (attuale: 3)
aglancio-istanze.txt Contiene le istanze attive per l'ambiente

L'istanza "0" non aggiunge il suffisso nei files per compatibilita'.

Spegnimento/riattivazione da host (con istanze)

Il procedimento non cambia: tutte le attivita' di accensione/spegnimento dovranno essere effettuate contemporaneamente per tutte le istanze attive.

Tabella stati:

Evento ATTIVA-AREAAPP RAZI-ATTIVA-SINCRO RAZI-SWITCH-ONOFF
Sistema "spento" "N" " " " "
Si attiva il sistema "S" " " " "
AGLANCIO esporta e inizia ad operare "S" "S" " "
Sistema attivo "S" "S" " "
Disattivazione da gestionale "N" "S" " "
AGLANCIO si ferma "N" "N" " "
Areagate richiede spegnimento "S" "S" "OFF"
Areagate richiede accensione "N" "N" "ON"

SWLIVE - Mantenimento istanza "live"

Nome programma: SWLIVE

Programma richiamato dai processi SW*CBL "critici", quando si sospetta che la durata sia tale da far scambiare il processo per spento da "lancio_ambienti".

Due modalita' di esecuzione: * AGPRG-OPE = "COMPLETA": aggiornamento ISTANZESYNC + creazione AGLANCIO-CHECK.TXT * AGPRG-OPE = "RIDOTTA": solo creazione AGLANCIO-CHECK.TXT


SWA068 - Sincronizzazione tecnici

Nome programma: SWA068 -- Id processo: 1 -- Nome processo: TECNICI

AREA AREAGATE Direzione
COGANATN, COGRIFER, PRNTOPE2, COGANAT2 ARPTECNI ----->

Esportazione della tabella "Tecnici" (solo da gestionale).

Esportazione differenziale gestita ma non ottimizzata (non esiste una chiave diretta per ottenere solo i record aggiornati).

Per ciascun tecnico si cercano i record collegati su COGRIFER, PRNTOPE2 e COGANAT2, e si aggiorna ARPTECNI.

Gestione speciale dell'esportazione codice azienda (RBRIF-GRP-AZ-COD) tramite ricerca su COGTECST e COGAZGRP.


SWA069 - Informazioni CRM/checklist

Nome programma: SWA069 -- Id processo: 3 -- Nome processo: INFO-CRM

AREA AREAGATE Direzione
CRMINFOR ARPINFOR ----->
ASNINFOR ARPINFOR <---->

Esportazione delle informazioni CRM e delle informazioni "check-list".

Importazione delle informazioni CRM relative a informazioni inserite/aggiornate/cancellate su APP.

Esportazione: id sincro gestito, esportazione differenziale gestita ma non ottimizzata. Include sia CRMINFOR che ASNINFOR come sorgenti.

Per il momento la verifica dei record cancellati non e' implementata per motivi di performance.


Estratto da documentazione interna ClickUp