Vai al contenuto

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.

  • 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 in nf-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-sin e' un flag di sincronia passato da COGG25M (via g25-fl-sin) che viene propagato alle chiamate successive.
  • La variabile opzioni controlla quante voci mostrare in COGS60: 2 (utente normale) o 3 (operatore 777).