Vai al contenuto

COGZB7 — Operazioni di fine lavoro (evasione commesse laboratorio)

Campo Valore
Sorgente cbl/cogzb7.cbl
Program-ID cogzb7
Tipo Maschera GUI interattiva (lista-griglia con elaborazione batch)
Posizione menu Lab.Odont. > Operativo > Evasione

Scopo

Gestisce le operazioni di fine lavoro delle commesse odontotecniche: individua le commesse con fasi consegnate nel periodo scelto, ne calcola lo stato "Evadibile / Non evadibile / Evasa / In prova" e permette di generare i documenti di trasporto/fattura di spedizione al medico. Dalla griglia l'operatore puo' creare i documenti (bolle/fatture via COGZ61), stamparli con i relativi allegati ed etichette, forzare manualmente l'evadibilita', gestire il visto amministrazione, le note di lavoro e la produzione di liste spedizioni ed export CSV/TXT per il vettore.

Struttura e flusso

  • apri — init programma, open-files, lettura azienda (rd-azi), divisa conto via COGU10W, caricamento bitmap e pulsanti custom (F5 Stato Commessa, F3 Genera Documento, F6 Non Evadibile, F8 Comandi Riga, F4 Gestione Documento, F10 Modifica Prestaz., S-F9 Note Lavoro, F2 Sblocca Ammin.), x99-confi per le configurazioni.
  • a4 — reset griglia, azzeramento maschera, valori di default dei filtri (date, tipo ordinamento "C", flag evadibili/evasi/non-eva/prova = "S").
  • a-tm-data-inia-tm-fl-ammin — accept dei filtri d'intestazione (date inizio/fine/documento, cliente da/a, flag evadibili/evasi/non evadibili/prova, visto amministrazione).
  • a-fine-intestazione — validazione, local-new-cogtrans (rigenera il file di transito temporaneo), poi elabora e carica.
  • elabora — scandisce LODCMRIG per chiave data consegna (chia4) nel range; per ogni fase filtra su cliente, stato piano/fase (LODPNRIG lpr-fl-check), determina l'evadibilita' incrociando LODPRESC, COGGEANA, COGAPPOG (tipo USL), bollettini (b1-cerca-bollet), controllo utente e blocco rifacimento, scrivendo il record di lavoro COGTRANS.
  • carica — riversa COGTRANS in tab-maschera (tm-tab occurs 900).
  • a-grid / a-accept-grid — loop sulla griglia; gestisce i tasti funzione riga e le dialog (F7 elaborazioni globali, F8 elaborazioni su riga, F9 liste spedizioni).
  • xf3-crea-doc / x3-crea-documenti — creazione documento singola riga o batch: chiamano COGZ61 ("Crea-doc-batch") e leggono COGRACBB/COGRACCO per risalire a bolla o fattura generata, classificandola in "B" (bolla) o "F" (fattura) in base ai tipi documento IVA di configurazione.
  • crea-file-x-vettore — genera file CSV/TXT per il vettore leggendo COGTESBO (spedizioni con cura "V"), usando il transito secondario COGTRAN2 e la tabella vettori w-tab-vettori.
  • z-chiudiz-close-files, chiusura window, uscita.

Il parametro d'ingresso wo-parametro = "S" mette la maschera in sola visualizzazione (blocca creazione documenti, sblocchi e stampe di riga).

Tabelle utilizzate

Tabella Accesso Descrizione
LODCMRIG (lcr-) lettura per chiave data consegna (chia4) Righe commessa/fase, motore dell'elaborazione
LODCMTES (lct-) lettura Testata commessa (piano, allegati, etichette, visto amm.)
LODPNRIG (lpr-) lettura Righe piano temporaneo (flag controllo fl-check)
LODPRESC (lpm-) lettura (chia4) Prescrizione/commessa (stato, disposizione, blocco)
LODCMAGG (lcg-) lettura/riscrittura Dati aggiuntivi commessa (tecnico, flag non evadibile)
COGGEANA (ana-) lettura Anagrafica cliente/fornitore
COGAPPOG (app-) lettura Appoggio anagrafica (merce trasporto, tipo USL)
LODTABEL (lta-) lettura Tabelle laboratorio (descrizione disposizione)
COGTRANS (trs-) file transito temporaneo, i-o Record di lavoro dell'elaborazione (una riga per commessa)
COGTRAN2 (tes-/transito2) file transito temporaneo Supporto per export vettore
COGTESBO (tes-) lettura (chia3) Testate bolle di spedizione (cura, vettore)
COGRACBB (rbb-) lettura (notmin) Raccordo bolle da documento creato
COGRACCO (rac-) lettura (chia2) Raccordo documenti (bolla/fattura generata)
LODDESCR (lde-) / LODTMDES (ltd-) i-o temporaneo Note lavoro/descrizioni commessa (gestite via COGZDEW)
filevettore (vet-) output sequenziale binario File CSV/TXT esportato per il vettore

Programmi chiamati

Programma Interfaccia Scopo
COGZ61 z61-* Creazione batch del documento di spedizione (bolla/fattura)
COGZB9 util-zb9 Stampa liste spedizioni (per trasporto/cliente/multistudio, prova)
COGZC1 util-zc1 Modifica prestazioni della commessa
COGZ50 z50-* Stato commessa (F5)
COGV68 v68-* Gestione bolla generata (F4, tipo "B")
COGF51 f51-* Gestione fattura generata (F4, tipo "F")
COGZDEW util-zde Editor note lavoro/commessa
COGU10W util-u10 Divisa conto ed editing importi
COGS52/COGS65/COGS95/COGS60 copybook s52/s65/… Gestori campi data/cliente/check/combo
DIALOGS util-dlg Menu di scelta elaborazioni (globali/riga/liste)
GRIDADMN util-gdad Gestione griglia
RNEWCONF util-ncnf Lettura configurazioni

Copybook principali

Copybook Ruolo
cogzb7.wrk / cogzb7.prc / cogzb7-01.scr Costanti, working, procedure e screen del programma
cogzb7-cogtrans.fd/.cpy, cogzb7-cogtran2.fd/.cpy Definizione file di transito temporanei
utilzb9, utilzc1, utilz50, utilz61, utilv52/v67/v68, utilf51, utilzde Interfacce ai programmi chiamati
utilncnf, utilu10, utils52/s65, utilgdad, utildlg Utility standard maschera/config/griglia
mmmask, cogazien, wstato, wopenf, wgrave, wnscr Infrastruttura maschera GUI

Configurazioni (RNEWCONF)

Gruppo Chiave Uso
ODONTO NOTE-LAVORO-SU-SCADENZIARI Abilita note lavoro
CONTABIL tipo-doc-iva-docmag-vendita Tipo doc IVA per classificare la bolla di vendita
CONTABIL tipo-doc-iva-docmag-resi-cli Tipo doc IVA per resi cliente
ODONTO soglia-non-evadibile Soglia importo non evadibile
abilita labod-impegni Gestione impegni laboratorio
odonto creazione-csv-x-vettore "C"/"T"/"N": genera CSV o TXT per il vettore
odonto cartella-csv-x-vettore Cartella di destinazione del file vettore

Note

  • La tabella tm-tab viene passata in linkage a COGZB8 (Stampa Etichette USL) e COGZB4 (Stampa Etichette Ortodonzia): eventuali modifiche vanno propagate a quei programmi (commento esplicito nel sorgente).
  • La gestione dell'azienda criptata via ENCRYPT e' stata rimossa il 02/07/2024 (PBUG-1925); ora si usa direttamente az-int.