COGV2A — Codici alternativi di ricerca merci¶
Sorgente: cbl/cogv2a.cbl | Tipo: interattivo a griglia | Program-ID: cogv2a
Menu: Magazzino > Archivi & Tabelle > Varie > Codici alternativi di ricerca
Scopo¶
Gestione dei codici alternativi con cui e' possibile ricercare/richiamare una merce
(codici "aggiuntivi" di ricerca). Ogni voce associa a una merce un codice
alfanumerico libero (fino a 30 caratteri) che diventa una chiave di ricerca
supplementare. I dati sono memorizzati sulla tabella COGMERCA con
mca-tipo-codice = "A" (tipo codice di ricerca), chiave anagrafica azzerata
(mca-ana-tip spaces, mca-ana-cod zero) e flag di validita' mca-val (record
cancellato logicamente se "C").
Il programma usa il framework di griglia editabile "GRID-DET" (transito su file
temporaneo t-grid-det) con salvataggio massivo differito: le modifiche vengono
accumulate sul file di transito e riversate su COGMERCA solo alla conferma (F3).
Puo' essere invocato anche in modalita' filtrata su una singola merce
(cogv2a-called/cogv2a-caller/cogv2a-merce in utilcogv2a).
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
COGMERCA (via feurtab) |
cogfiles.cpy, cogv2a.fd, cogv2a.select, cogmerca.k02 |
Codici merce alternativi di ricerca. Record mca-rec: mca-merce, mca-tipo-codice="A", mca-ana, mca-codice (30), mca-val. Chiave secondaria k02 usata per il controllo di univocita' del codice |
COGMERCI |
accesso mer-rec (mer-chia, mer-descr) |
Validazione codice merce e recupero descrizione |
t-grid-det |
via framework GRID-DET (gor-r/t-gor-r) |
File temporaneo di transito per la griglia editabile; creato/riordinato/riletto e cancellato in chiusura |
util-gdad |
utilgdad.cpy |
Interscambio con GRIDADMN |
util-s68 |
utils68.cpy |
Aiuto/ricerca merci (COGS68W) |
util-ncnf |
utilncnf.cpy |
Struttura per configurazioni RNEWCONF (predisposta, vedi Note) |
util-imppredf |
utilimppredf.cpy |
Gestione filtri/impostazioni predefinite della griglia |
util-cogv2a |
utilcogv2a.cpy |
Copybook di link con il chiamante |
Flusso principale¶
apri— inizializzazione (z-99-init-program,ctr-abil,rd-azi,open-files), rilevamento invocazione filtrata (w-dc-called), abilitazione tasti funzione (F3 conferma/aggiorna, F8 aiuto, F9 ricerca avanzata, SHIFT-F4 griglia, SHIFT-F5 export Excel, CTRL-A/CTRL-E), creazione del menu pop-up di griglia (build-main-popup-grid-det), preparazione griglia GRID-DET.a4— impostazione filtro merce, ordinamento predefinito (per codice,gcn-r-codiceasc) e caricamento eventuale filtro di default (z-imppredf-carica-default).a-tm-merce— accept del filtro merce (con aiuto COGS68W). In modalita' chiamata salta direttamente alla conferma.a-leggi-dati/z-grid-det-crea-transito— crea il file di transito leggendoCOGMERCA(scanst-cogmerca-notmin+rdnxt-cogmerca) filtrandomca-tipo-codice = "A",mca-ana-tipspaces,mca-ana-codzero,mca-valspaces; se impostato il filtro merce, si limita alla merce indicata.a-grid— gestione della griglia editabilee-grid-det: CTRL-A aggiunge una riga vuota, CTRL-E marca/smarca la riga per cancellazione (flagtm-r-fl-agg = "C"), SHIFT-F4 personalizza colonne, SHIFT-F5 esporta in Excel, menu pop-up via right-click. F3 valida tutte le righe e chiede conferma degli aggiornamenti.- Controlli riga —
x-controlla-tm-r-mer(merce codificata),x-controlla-tm-r-codice(codice obbligatorio, normalizzato in maiuscolo, controllo di univocita' sia suCOGMERCAvia chiave secondaria k02 sia sul file di transito: il codice non deve essere gia' collegato ad altra merce). b-aggiorna— riversamento del transito suCOGMERCAalla conferma. Gestisce i casi: riga marcata"C"-> cancellazione logica (mca-val = "C"); inserimento (wr-cogmerca); modifica come cancellazione precedente + inserimento attuale quando merce/codice sono cambiati.fine/z-chiudi— chiusura file,cancel "COGS68W", chiusura e delete del temporaneot-grid-det, distruzione menu,z-99-exit-program.
Sottoprogrammi chiamati¶
| Programma | Ruolo |
|---|---|
COGS68W |
Aiuto/ricerca merci sul filtro e nelle colonne merce della griglia (util-s68) |
GRIDADMN |
Gestione/personalizzazione griglia dettaglio GRID-DET |
W$MENU |
Attivazione del menu contestuale (pop-up) della griglia su right-click |
RNEWCONF |
Predisposto ma non attivo (paragrafo x99-confi commentato, vedi Note) |
Configurazioni (RNEWCONF)¶
Il programma predispone la struttura util-ncnf e un paragrafo x99-confi, ma la
chiamata a RNEWCONF e' interamente commentata nel sorgente: al momento non usa
configurazioni RNEWCONF attive. Il pulsante F1-configura e la gestione di
tm-cfg- sono presenti solo come scaffolding predisposto.
Note¶
- Cancellazione logica: le righe non vengono eliminate fisicamente da
COGMERCAma marcate conmca-val = "C"; in lettura vengono considerate solo quelle conmca-valspaces. - Il codice di ricerca viene forzato in maiuscolo (
function upper-case) e deve essere univoco: il controllo verifica sia i record gia' suCOGMERCA(chiave secondariacogmerca.k02, per codice), sia le righe presenti sul file di transito, per evitare di collegare lo stesso codice a merci diverse. - Framework griglia editabile GRID-DET con transito su file temporaneo e
aggiornamento massivo differito alla conferma; ampio uso di paragrafi/entry-point
generati (
z-grid-det-*,x-*grid-det,z-s68-*-ep). - Presente l'export della griglia in Excel (SHIFT-F5,
z-esporta-grid-det). - Gran parte del codice per filtri memorizzati (CTRL-S/CTRL-F,
z-imppredf-salva/z-imppredf-seleziona) e per i pulsanti custom e' commentata: attivo solo il caricamento del filtro di default.