COGZ44 -- Statistiche di non conformita' (laboratorio odontotecnico)¶
Sorgente: cbl/cogz44.cbl | Tipo: Programma interattivo a filtri + griglia risultati + stampa/export | Program-ID: COGZ44
Menu: Lab.Odont. > Operativo > Non conformita' [Statistiche di non conformita']
Scopo¶
COGZ44 e' lo strumento di analisi e reportistica dei rapporti di non conformita' (RNC) del laboratorio odontotecnico. Consente di filtrare i rapporti (LODRAPNC) e le relative azioni correttive/preventive (LODAZRNC) per numerosi criteri, di visualizzare i risultati in una griglia GRIDADMN, di stamparli (in forma analitica o sintetica) e di esportarli in Excel.
Per ogni RNC che soddisfa i filtri, il programma ricostruisce una riga di dettaglio con: dati del rapporto (data, numero, codice e descrizione NC, operatore), azione correttiva/preventiva collegata, commessa/cliente/paziente/reparto, documento di uscita (bolla o fattura), note testuali e tre valori economici (ricavo fatturato/da fatturare e importo dei rifacimenti). I risultati sono organizzati in una tabella di transito indicizzata con molte chiavi alternative, per supportare i diversi ordinamenti di stampa.
La maschera e' organizzata a schede (tab-control): una pagina "Richiesta dati" con i filtri e una pagina "Risultato" con la griglia. Puo' essere richiamato come sottoprogramma (w-dc-called = "S").
Filtri disponibili (pagina "Richiesta dati")¶
Tipo rapporto (RNC/AC/entrambi), tipo NC (tm-tip-nc: P/S/V/tutti), stato (tm-stato: azione presente/assente/tutti), codice NC (tm-nc-cod), codice azione correttiva (tm-ac-cod), codice azione preventiva (tm-ap-cod), intervallo date (tm-data-ini/tm-data-fin) o periodo, operatore (tm-ope-cod) e sua relazione (tm-rel-cod: R = operatore RNC, A = operatore azione), cliente (tm-cli-cod), agente (tm-age-cod), tipo dispositivo (tm-dsp-cod), reparto (tm-reparto), tipo stampa (tm-tip-prn: A analitica / S sintetica), ordinamento (tm-ord-prn: C per codice / altro per data).
I filtri predefiniti possono essere caricati/salvati tramite il modulo IMPPREDF (utilimppredf.cpy, cogz44.imppredf).
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| FEURTAB | cogfiles.cpy |
Parametri generali azienda (rd-azi) |
| LODRAPNC | cogz44.select (lodrapnc.fd, rnc-rec) |
Rapporti di non conformita': scansione principale (data, numero, tipo, codice NC, operatore, commessa, reparto, flag azione/luogo) |
| LODAZRNC | cogz44.select (lodazrnc.fd, rna-rec) |
Azioni correttive ("C") / preventive ("P") collegate a ogni RNC |
| LODTABEL | cogz44.select (lodtabel.fd, lta-rec) |
Descrizioni: NC (tipo 13), azione correttiva (tipo 14), azione preventiva (tipo 15) |
| LODDESCR | cogz44.select (loddescr.fd, lde-rec) |
Note testuali estese di RNC ("RC") e azioni ("AC"), lette da a1-carica-nota |
| LODPRESC | cogz44.select (lodpresc.fd, lpm-rec) + lodpresc.k04 |
Prescrizione/commessa collegata all'RNC: medico, paziente, data, importi (via rd-lodpresc-chia4) |
| COGGEANA | cogz44.select (coggeana.fd, ana-rec) |
Anagrafica cliente: ragione sociale, agente |
| COGTABEL | cogz44.select (cogtabel.fd, euta-rec) |
Descrizioni operatore (tipo 36) e reparto |
| COGTESBO | cogz44.select (cogtesbo.fd, tes-rec) |
Testata bolla del documento di uscita collegato alla commessa |
| COGRACBB | cogz44.select (cogracbb.fd, rbb-rec) |
Raccordo commessa (rbb-a-bol, tipo "CD") -> bolla (rbb-b-bol) |
| COGRACCO | cogz44.select (cogracco.fd, rac-rec) + cogracco.k02 |
Raccordo bolla -> fattura (carica-bolla-cerca-fattura) |
| LODTMDES / LODTRDES | lodtmdes.cpy / lodtrdes.cpy (+ .k01) |
File temporanei per la stampa delle note (descrizioni impaginate da COGZDEW) |
| FLSTA | flsta.cpy (riga) |
File di stampa del report |
| t-grid-det | cogz44.select (transito, t-gor-r-*, 7 chiavi) |
Tabella di transito indicizzata dei risultati; chiavi alternative per gli ordinamenti (codice/data/operatore/azione) |
Programmi chiamati¶
| Programma | Innesco | Ruolo |
|---|---|---|
| COGU10W | init (get-divisa-conto) |
Divisa di conto per i valori economici |
| RNEWCONF | x99-confi |
Lettura configurazione (tipo doc IVA docmag vendita) |
| COGZ99 | F8 su codice NC | Aiuto/selezione codice non conformita' |
| COGZ59 | F8 su azione correttiva/preventiva (z59-in-tipo = C/P) |
Aiuto/selezione codici azione |
| COGZ93 | F8 su tipo dispositivo | Aiuto/selezione tipo dispositivo |
| WIN073 | F8 su operatore (w73-in-tab = "O") |
Aiuto/selezione operatore |
| COGS65W | accept cliente/agente | Gestione/aiuto campi codice cliente e agente |
| COGS54 | stampa |
Selezione della periferica di stampa |
| COGZDEW | stampa-note (E) |
Impaginazione delle note testuali (RNC/azioni) su file temporaneo per la stampa |
| COGZS5 | z-grid-ricerca-dati |
Ricavi gia' presenti sui BDP della commessa (prestazioni + materiali) |
| COGZ61 | z-grid-ricerca-dati (Calc-all-impo) |
Ricavo non ancora fatturato della commessa (usato se COGZS5 = 0) |
| COGZAI | z-grid-ricerca-dati |
Importo dei rifacimenti della commessa e responsabile del rifacimento |
| COGZ50 | griglia risultati, F5 | Apre lo Stato Commessa (COGZ50-CALLED) per la riga selezionata |
| GRIDADMN | z-gridadmn-prepara-grid-det, S-F4, esporta |
Preparazione, personalizzazione ed esportazione Excel della griglia risultati |
Flusso principale¶
apri-- init, lettura configurazione (x99-confi), apertura file, calcolo divisa di conto.a4-- apertura del file temporaneo note (LODTMDES) con controllo di uso esclusivo; imposta i filtri di default (RNC/prodotto/azione presente/periodo relativo/analitica per codice) ed eventualmente carica i filtri predefiniti (IMPPREDF); mostra la pagina "Richiesta dati".- Accept dei filtri (
a-tm-tip-rap...a-tm-ord-prn), con aiuti F8 verso COGZ99/COGZ59/COGZ93/WIN073 e COGS65W per cliente/agente. a-controlla-filtri(F7/F3) -- valida i filtri (x-imposta-conferma) e passa alla pagina "Risultato".a-leggi-dati/z-grid-det-crea-transito-- costruisce la tabella di transito eseguendoz-grid-ricerca-dati.z-grid-ricerca-dati(ela-loop) -- scandisce LODRAPNC; per ogni RNC applica in cascata i filtri (tipo, stato azione, operatore, codice NC via LODAZRNC, date, commessa/cliente/reparto/agente); esegueelabora-azioni(scansione LODAZRNC per azioni correttive/preventive); scarta l'RNC in base al filtro "rapporti con/senza azione"; carica descrizioni, operatori, documento di uscita (bolla via COGRACBB/COGTESBO, fattura via COGRACCO), note (a1-carica-nota) e, se c'e' una commessa, i tre valori economici (COGZS5, COGZ61, COGZAI); inserisce il record di transito.a-grid-- griglia risultati: S-F4 personalizza colonne, S-F5 esporta Excel, F5 apre lo Stato Commessa, F9 stampa il report.stampa-- selezione periferica (COGS54); stampa analitica (d-05/d-10-loop, una riga per RNC con note RC/AC via COGZDEW) o sintetica (d-sint: conteggi per codice NC, per azione correttiva, per operatore RNC e per operatore azione), con ordinamento per codice o per data secondotm-ord-prn.
Configurazione (RNEWCONF)¶
Pacchetto C, caricato in x99-confi:
| Gruppo | Chiave | Variabile | Effetto |
|---|---|---|---|
| CONTABIL | tipo-doc-iva-docmag-vendita | tm-cfg-docmag-vendita |
Tipo documento IVA usato in carica-bolla-cerca-fattura per distinguere le fatture "fittizie" (docmag di vendita) e forzare i riferimenti alla bolla |
Note¶
- Il documento di uscita (
t-gor-r-du-*) e' una fattura ("F") se esiste una fattura reale collegata alla bolla; se non c'e' fattura o se la fattura e' di tipo docmag vendita (tm-cfg-docmag-vendita), si ripiega sulla bolla ("B"). - I valori economici sono calcolati solo per gli RNC con commessa:
t-gor-r-imp-fat= ricavi COGZS5 (prestazioni+materiali); se zero, si usa l'importo da fatturare di COGZ61;t-gor-r-imp-rif= importo rifacimenti di COGZAI. - La combinazione dei filtri azione (
tm-ac-cod/tm-ap-cod) determina il valorew-filtro-azioni(nessuno/correttive/preventive/entrambe) che pilota la scansione di LODAZRNC inelabora-azioni. - La tabella di transito
t-grid-detha 6 chiavi alternative definite manualmente nelcogz44.select(non gestibili da Screens): supportano gli ordinamenti per data, codice NC, codice azione, operatore RNC e operatore azione. - Il file temporaneo note (LODTMDES/LODTRDES) viene chiuso e riaperto in output a ogni uso per garantirne l'esclusivita' e svuotarlo.
- Le chiavi secondarie
lodpresc.k04,cogracco.k02,lodtmdes.k01,lodtrdes.k01sono incluse manualmente in coda alla procedure division (non generate da Screens). - Copybook di interfaccia inclusi:
wgrid.cpy,utilgdad.cpy,utils52.cpy,utils65.cpy,utilz59.cpy,utilz93.cpy,utilz99.cpy,utilzs5.cpy,utilw73.cpy,utilw80.cpy,utilzde.cpy,utilcogzai.cpy,utils93.cpy,utilu10.cpy,utilu20.cpy,utilimppredf.cpy,utilncnf.cpy, e in linkageutilz50.cpy/utilz61.cpy. Programma standalone (mmmask.cpy).
Documentazione tecnica -- 2026-08-05