COGDB1 -- Codici Fornitori per GDO¶
Sorgente: cbl/cogdb1.cbl | Tipo: Programma GUI tabellare (griglia con file di transito) | Program-ID: cogdb1
Menu: Vendite > Fatturazione > Esportazioni > Tabelle > Codici fornitori per GDO
Scopo¶
Gestione della tabella di raccordo tra clienti GDO e codici fornitore.
I record vengono salvati su COGTABEL con tipo "MG". Per ogni cliente
si associa un codice fornitore (euta-mg-codfor) e un percorso di
estrazione file (euta-mg-path-file).
File e tabelle¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| COGTABEL | Indicizzato, I/O | Tabella generica: tipo "MG" per raccordi GDO |
| COGGEANA | Indicizzato, lettura | Anagrafica soggetti (tipo "C" per clienti, lettura descrizione) |
| T-GRID-DET | Indicizzato, I/O | File di transito per la griglia (temporaneo, eliminato alla chiusura) |
| cogdb1.select | Screens | File gestiti da Screens (COGTABEL, COGGEANA) |
Copybook principali¶
cogdb1.wrk,cogdb1.fd,cogdb1.select,cogdb1.decla,cogdb1.prc-- generate da Screenscogdb1.tm-- campi tab-maschera gestiti da Screenscogdb1.imppredf-wrk,cogdb1.imppredf-- gestione filtri predefiniticogdb1-01.scr-- screen sectionwgrid.cpy-- variabili standard grigliautilgdad.cpy-- interfaccia GRIDADMNutils65.cpy-- interfaccia COGS65W (ricerca anagrafiche)utilu20.cpy-- interfaccia COGU20W (editing numerico)utilcogb65.cpy-- interfaccia COGB65utilimppredf.cpy-- gestione filtri predefiniti
Struttura del programma¶
Il programma usa il pattern griglia con file di transito (T-GRID-DET):
i dati vengono caricati su un file temporaneo indicizzato per gestire
ordinamento, filtro e paginazione.
Paragrafi principali¶
| Paragrafo | Funzione |
|---|---|
apri |
Inizializzazione, apertura file, creazione transito, menu pop-up |
a4 |
Reset griglia, impostazione ordinamento e filtro default |
a-leggi-dati |
Creazione e riordinamento file di transito |
a-grid |
Loop principale di accept sulla griglia |
b-aggiorna |
Ciclo su T-GRID-DET per salvare modifiche su COGTABEL |
b-aggiorna-record |
Salvataggio singolo record (write o rewrite su COGTABEL tipo "MG") |
c-cancella-record |
Cancellazione record da COGTABEL |
z-grid-det-crea-transito |
Popolamento file di transito da COGTABEL |
Logica di elaborazione¶
Caricamento dati (z-grid-det-crea-transito)¶
- Scansione COGTABEL con START su tipo
"MG" - Per ogni record:
- Copia
euta-codrint-gor-r-cli-cod(codice cliente) - Lettura COGGEANA tipo "C" per ottenere
ana-nome(descrizione) - Copia
euta-mg-codforeeuta-mg-path-file - Salva
euta-codrint-gor-r-cod-prec(per gestire cancellazione) - Scrive sul file di transito T-GRID-DET
Aggiornamento (b-aggiorna)¶
Scansione sequenziale di T-GRID-DET:
| Condizione | Operazione |
|---|---|
t-gor-r-prog > 0 e t-gor-r-cli-cod = zero |
Cancellazione da COGTABEL |
t-gor-r-riga-mod = "S" |
Aggiornamento (write se non esiste, rewrite se esiste) |
Validazioni¶
- x-controlla-tm-r-cli-cod: codice cliente obbligatorio; verifica duplicati su COGTABEL tipo "MG"
- x-controlla-tm-r-codfor: codice fornitore obbligatorio se cliente valorizzato
- x-controlla-tm-r-path-file: percorso file obbligatorio se cliente valorizzato
Begin-entry (campi non editabili)¶
z-grid-det-cli-cod-be-ep: il codice cliente non e' modificabile setm-r-cod-prec <> zero(record gia' esistente)z-grid-det-cli-des-be-ep: idem per la descrizione cliente
Ordinamento predefinito¶
Ordinamento ascendente per codice cliente (gcn-r-cli-cod).
CALL esterni¶
| Programma | Scopo |
|---|---|
| GRIDADMN | Gestione colonne griglia |
| COGS65W | Ricerca anagrafiche clienti (tipo "C", no agenti, no vetrina) |
| RNEWCONF | Lettura configurazioni (implicito via Screens) |