COGZCI — Ricerca lotti utilizzati
| Campo |
Valore |
| Sorgente |
cbl/cogzci.cbl |
| Program-ID |
cogzci |
| Tipo |
Lista-griglia/visualizzazione |
| Posizione menu |
Lab.Odont. > Operativo > Visualizzazioni > Ricerca lotti utilizzati |
Scopo
Ricerca in quali commesse del laboratorio odontotecnico e' stato utilizzato un dato lotto di materiale, mostrando in griglia commessa, cliente/studio, paziente, data, merce, lotto, unita' di misura e quantita' impiegata. L'operatore indica il lotto (e opzionalmente la merce) e sceglie tra ricerca esatta o parziale (tm-fl-esatta): la parziale trova tutti i lotti che contengono la stringa indicata. E' una funzione di sola consultazione, tipicamente usata per la tracciabilita' (individuare i lavori interessati da un lotto specifico).
Struttura e flusso
apri — init programma (z-99-init-program), ctr-abil, rd-azi, open-files, definizione tasti funzione (F3 conferma, SF4 griglia, F9 ricerca avanzata), preparazione controlli merce (via COGS68W) e griglia (z-prepara-tm-grid).
a4 — reset della griglia e dei filtri, ricerca esatta di default a "N".
a-tm-merce / a-tm-lotto / a-tm-fl-esatta — accept dei filtri: merce (con aiuto COGS68W), lotto (obbligatorio) e flag ricerca esatta (via COGS95). carica-length calcola la lunghezza significativa del lotto per la ricerca parziale.
a-fine-dati — validazione (x-controlla-dati) e chiamata a carica-griglia.
carica-griglia — cuore della ricerca: scandisce LODPNMAT (materiali di piano). Con ricerca esatta e merce indicata parte sulla chiave .k03 (merce + lotto), altrimenti sulla chiave .k02 (per tipo "M"). Per ogni record materiale di tipo "M" confronta il lotto (upper-case) con quello richiesto — uguaglianza in ricerca esatta, contenimento (inspect ... tallying) in ricerca parziale. Per ogni riscontro risale a testata commessa LODCMTES (chiave .k05 per piano), prescrizione LODPRESC, anagrafica studio COGGEANA, riga commessa LODCMRIG (per il coefficiente lcr-n-elementi) e merce COGMERCI (unita' di misura), calcolando la quantita' effettiva (w-rc-qta, moltiplicata per il coefficiente quando lmt-fl-qta = "U"). Riempie la tabella di maschera tm-righe (occurs 800).
carica-griglia-fine / pnmds-10-loop — seconda scansione su LODPNMDS (materiali descrittivi di commessa) per lo stesso lotto, aggiungendo alla griglia anche i lotti attribuiti tramite materiali descrittivi (TASK-1588) con la relativa descrizione.
z-costruisci-grid / x-riempi-grid-record — costruzione della griglia via GRIDADMN.
a-grid / a-accept-grid — loop di griglia con sola consultazione; SF4 personalizzazione colonne.
fine / z-chiudi — chiusura file e uscita.
Nota: a differenza degli altri programmi di visualizzazione del laboratorio, COGZCI non usa un file di transito COGTRANS: i risultati vengono accumulati direttamente nella tabella di maschera in memoria (max 800 righe).
File e tabelle
| Tabella |
Accesso |
Descrizione |
LODPNMAT (lmt-) |
lettura (chiavi .k02, .k03) |
Materiali di piano/commessa (tipo "M", merce, lotto, quantita', unita' di misura) |
LODPNMDS (lmtd-) |
lettura (chiave .k02 per lotto) |
Materiali descrittivi di commessa (lotto, merce, descrizione) |
LODCMTES (lct-) |
lettura (chiave .k05 per piano) |
Testata commessa (commessa, medico, paziente, coefficiente) |
LODCMRIG (lcr-) |
lettura |
Righe commessa (numero elementi/coefficiente) |
LODPRESC (lpm-) |
lettura |
Prescrizione/commessa (data) |
COGGEANA (ana-) |
lettura |
Anagrafica studio (nome) |
COGMERCI (mer-) |
lettura |
Anagrafica articoli (unita' di misura) |
Copybook principali
| Copybook |
Ruolo |
cogzci.select/.fd/.wrk/.prc/.decla, cogzci-01.scr |
Definizioni generate e screen section |
utilgdad, utils52, utils68, utilu20 |
Gestori griglia/campo data/merce/importi |
cogzci.decla, chiavi lodpnmat.k02, lodpnmat.k03, lodcmtes.k05, lodpnmds.k02 |
Declaratives e chiavi secondarie (a fine procedure division) |
mmmask.cpy, cogazien.cpy, wgrave, wnscr, wopenf, wstato |
Infrastruttura maschera GUI |
Programmi chiamati
| Programma |
Interfaccia |
Scopo |
COGS68W |
util-s68 |
Aiuto/ricerca merce (gruppo/sottogruppo/codice) |
GRIDADMN |
util-gdad |
Personalizzazione griglia (SF4) |
Note
- La ricerca parziale confronta i lotti sempre in maiuscolo (
function upper-case, tm-lotto-upper): la corrispondenza e' case-insensitive.
- La quantita' mostrata e' rapportata al coefficiente/numero elementi della commessa quando il materiale e' espresso "per unita'" (
lmt-fl-qta = "U").
- Se la merce non e' indicata la ricerca avviene sul solo lotto (chiave
.k02 per tipo "M"), quindi puo' restituire lotti di merci diverse.
Storico modifiche
130924: aggiunta la colonna descrizione dei materiali descrittivi (grd-lmtd-des) e la ricerca su LODPNMDS; confronto lotto in upper-case.
050825 (TASK-1588): nei record LODPNMDS possono comparire merci per attribuire altri codici lotto a parita' di LODPNMAT.
- Autore: Gianluca Tonti. Programma GUI diretto (Gianluca, 10/12/2009).