COGG25 - Sincronizzazione Archivi Clienti Potenziali¶
Funzione¶
Gestione dell'aggiornamento differito tra server e notebook per gli archivi dei clienti potenziali. Il programma orchestra la sincronizzazione bidirezionale delegando l'elaborazione effettiva alla subroutine COGG25M. Supporta tre operazioni: trasferimento dati (bidirezionale), pulizia archivi, verifica differenze.
Menu¶
- Contabilita' > Clienti Potenziali > Sincronizzazione Archivi
Tabelle e file principali¶
| Tabella | Descrizione | Accesso |
|---|---|---|
| COGCNDCF | Configurazione clienti potenziali | Input (lettura path archivi dal file numero 88) |
| FEURTAB | Tabella generica Eurosystem | Input |
Gli archivi effettivamente sincronizzati sono gestiti da COGG25M (e COGG25S), non da questo programma.
Struttura interfaccia COGG25M (util-g25)¶
| Campo | Descrizione |
|---|---|
g25-ope |
Operazione: "check-path", "note->serv", "serv->note", "write-log" |
g25-path-master |
Percorso archivi master (sorgente) |
g25-path-slave |
Percorso archivi slave (destinazione) |
g25-fl-ok |
Esito: "N" = errori verificati |
g25-prior |
Priorita': "S" = Server, "N" = Notebook |
g25-n-file |
Numero file elaborati |
g25-stato |
File status (stato "35" = path non trovato) |
g25-fl-sin |
Flag sincronia |
g25-operaz |
Operazione corrente: "T"=trasferim., "P"=pulizia, "V"=verifica |
Logica principale¶
Selezione operazione (a10)¶
Usa COGS60 per la selezione da lista (tab-oper): T=Trasferim. Dati, P=Pulizia Archivi, V=Verifica Arch. Il numero di opzioni dipende da wo-oper: se vale 777 (operatore speciale) sono disponibili tutte e 3, altrimenti solo T e P.
Selezione percorsi (a20, a20-2)¶
- Path Server (
tm-path-serv): proposto prelevando il path dal nome file COGCNDCF (numero 88 innf-tab-files) con unstring su "COGCNDCF.ARC". - Path Notebook (
tm-path-note): proposto come copia del path server con primo carattere "C" (drive locale). - Entrambi accettati con
control 'upper'.
Verifica path (check-path)¶
Prima chiamata a COGG25M con g25-ope = "check-path". Stato "35" = path non trovato (torna a a4). Stato diverso da "00" = errore fatale (va a fine).
Priorita' e pulizia (a30)¶
Per le operazioni T e P viene richiesta la priorita' tramite COGS60 (tab-prio: S=Server, N=Notebook).
Esecuzione (a50)¶
Due fasi:
1. a50-1 (note->serv): notebook come master, server come slave. Chiamata COGG25M.
2. a50-2 (serv->note): server come master, notebook come slave. Chiamata COGG25M.
Per la pulizia (tm-oper = "P"): se priorita' Server (tm-prior = "S") salta la fase 1 (go to a50-2); se priorita' Notebook (tm-prior = "N") salta la fase 2 (go to a50-sin).
Dopo ogni fase viene chiamato COGG25M con g25-ope = "write-log" per registrare il log, poi cancel "COGG25M".
Errori¶
Se g25-fl-ok = "N" dopo una delle due fasi, viene impostato ri-fl-ok = "N". Al termine (a50-sin) se ri-fl-ok = "N" viene mostrato il messaggio di consultare SINCRO.LOG.
Verifica archivi protetta (verif-dati)¶
Accessibile solo da utenti con wo-oper = 777 e operazione "V". Richiede password "666" (in clear, campo tm-pass con prompt secure). Alla conferma procede con l'elaborazione normale.
Copybook principali¶
| Copybook | Contenuto |
|---|---|
feurtab.fd / cogcndcf.fd |
SELECT file |
cogfiles.cpy / cogcndcf.cpy |
FD file |
wgrave.cpy / cogazien.cpy / wstato.cpy / wopenf.cpy / wnscr.cpy |
WS comuni |
utilm96.cpy |
Interfaccia UTILM96 |
utils60.cpy |
Interfaccia COGS60 (selezione da lista) |
wcont.cpy / wcont1.cpy |
Linkage section |
cogcndcf.k01 |
Chiave primaria COGCNDCF |
stato.cpy / winmsg.cpy / grave.cpy |
Gestione errori |
open1.cpy |
Apertura file generica |
stato1.cpy |
Stato file esteso |
mmmask.cpy |
Init/exit programma standalone |
scree.cpy |
Gestione finestre/schermi |
Programmi chiamati (CALL)¶
| Programma | Scopo |
|---|---|
| COGG25M | Motore di sincronizzazione (check-path, trasferimento, pulizia, verifica, write-log) |
| COGS60 | Selezione operazione e priorita' da lista |
Note tecniche¶
- Il programma e' un programma standalone (usa
mmmask.cpy). - La maschera e' gestita in modo testuale: 21 righe x 80 colonne, posizione 2/1.
- COGG25M viene cancellato (
cancel) dopo ogni gruppo di chiamate per liberare memoria. - Il file COGCNDCF e' aperto in input e poi chiuso subito (
close-cogcndcf) dopo la lettura del path: la riga*. cogcndcf.nella declaratives indica che il file era in error procedure ma e' stato commentato. fl-sine' un flag di sincronia passato da COGG25M (viag25-fl-sin) che viene propagato alle chiamate successive.- La variabile
opzionicontrolla quante voci mostrare in COGS60: 2 (utente normale) o 3 (operatore 777).