Vai al contenuto

COGZ36 — Ricavi netti per cliente / tipo dispositivo

Campo Valore
Sorgente cbl/cogz36.cbl
Program-ID cogz36
Tipo Visualizzazione statistica (griglia con stampa)
Posizione menu Lab.Odont. > Operativo > Visualizzazioni > Ricavi netti x Cliente

Scopo

Calcola e visualizza i ricavi netti (utile) delle commesse del laboratorio odontotecnico in un intervallo di date, raggruppati per cliente/studio o per tipo dispositivo. Per ogni prescrizione somma costi (mano d'opera, materiali) e ricavi (prestazioni, materiali), calcola l'utile e la percentuale, e presenta il risultato in griglia con vari livelli di dettaglio. Rispetto a cogz33 (che aggrega tutto in 4 voci) qui il dettaglio e' per commessa/studio/dispositivo. E' una funzione di consultazione con stampa (F9) e accesso al dettaglio economico della commessa (F5).

I filtri della testata sono: data inizio/fine, tipo ordinamento (tm-tip-ord: "C" per cliente/studio o dispositivo), livello di dettaglio (tm-liv-det: "O" ordinato, "T" totali, "C" completo), tipo lavoro con inclusione/esclusione e stato commessa aperte/chiuse.

Struttura e flusso

  • apri — init, open-files, rd-azi, costruzione del nome del transito temporaneo COGTRANS, lettura divisa di conto via COGU10W, definizione tasti funzione (SF4, F3, F9 stampa, F5 dettaglio).
  • a4 — apre COGTRANS in output/i-o con lock di funzione per operatore, imposta i default (tipo ord/liv det "C", tipo lavoro "A", commesse aperte e chiuse "S").
  • Sezione accept — filtri date (via COGS52/calendario), tipo ordinamento, livello dettaglio, tipo lavoro e stato commessa.
  • elabora (e-10-loop) — scandisce LODPRESC sulla chiave data (chia3) nell'intervallo, applicando i filtri stato/tipo lavoro. Per ogni commessa chiama COGZS5 (scomposizione economica). Scrive un record per commessa sul transito COGTRANS (chiave studio + dispositivo + commessa) con studio da LODPRESC/COGGEANA, tipo dispositivo da LODPRESC e descrizione da LODTABEL (tipo 8). Mantiene inoltre record di subtotale (commessa = high-values) per studio, per dispositivo e totale generale, aggiornandoli con rd/rwr.
  • carica — riversa COGTRANS (letto sulla chiave primaria per studio o su chia2 per dispositivo, a seconda di tm-tip-ord) nella tabella di maschera (tm-righe, occurs 900), saltando i record di subtotale (commessa = high-values).
  • a-grid / a-accept-grid — loop di griglia; F9 avvia la stampa (stampa), F5 richiama COGZCN (dettaglio economico) sulla commessa selezionata, SF4 la personalizzazione colonne.
  • stampa / c-stampa — stampa HP-GL/2 (emulazione HPLJ3, via COGS54 per la scelta stampante). La formattazione del report dipende da tm-liv-det (c1-stampa ordinato, c2-stampa totali, c3-stampa completo) e da tm-tip-ord, con salti pagina e righe di totale.
  • fine / z-chiudi — chiusura file, delete file di COGTRANS, cancel di COGZS5, uscita.

File e tabelle

Tabella Accesso Descrizione
COGTRANS (trs-) temporaneo indicizzato, i-o (delete file) Un record per commessa piu' i subtotali. Chiave trs-chia1 = studio + dispositivo + commessa; chiave secondaria trs-chia2 = dispositivo + studio + commessa. Contiene costi/ricavi, totali, utile e percentuale
LODPRESC (lpm-) lettura (chiavi .k03 per data, .k04) Prescrizione/commessa (stato, tipo lavoro, medico, tipo dispositivo)
LODTABEL (lta-) lettura Descrizione tipo dispositivo (tipo 8)
COGGEANA (ana-) lettura Anagrafica studio (nome)
FLSTA lettura File stato documenti

Copybook principali

Copybook Ruolo
cogz36.select/.fd/.wrk/.prc/.decla, cogz36-01.scr Definizioni generate e screen section
k-u10.cpy, utilu10.cpy Costanti e interfaccia divisa/editing importi (COGU10W)
utilzs5.cpy Interfaccia a COGZS5 (scomposizione economica commessa)
utilcogzcn.cpy Interfaccia a COGZCN (dettaglio economico)
utilfnt, utils52, utils54, utilw80, utilgdad Font/gestori campo/aiuto/stampa/griglia
cogz36.decla, chiavi cogtrans.k01, cogtrans.k02, lodpresc.k03, lodpresc.k04 Declaratives e chiavi secondarie (a fine procedure division)
mmmask.cpy, cogazien.cpy, wstato, wopenf, wgrave, wnscr Infrastruttura maschera GUI

Programmi chiamati

Programma Interfaccia Scopo
COGZS5 util-zs5 Scomposizione costi/ricavi della commessa (nucleo di calcolo)
COGZCN util-cogzcn Dettaglio economico commessa (F5)
COGU10W util-u10 Divisa di conto ed editing importi
COGS52 util-s52 Gestore campo data
COGS54 util-s54 Scelta stampante / stampa HP-GL/2
GRIDADMN util-gdad Personalizzazione griglia (SF4)

Note

  • Come COGZ33, il calcolo economico e' delegato a COGZS5: COGZ36 orchestra la scansione, l'accumulo per studio/dispositivo/totale e la stampa. Il raggruppamento (per cliente o per dispositivo) e' pilotato da tm-tip-ord e la chiave primaria/secondaria del transito viene usata di conseguenza in caricamento e stampa.
  • I record di subtotale nel transito hanno trs-commessa = high-values e vengono saltati nel caricamento della griglia ma usati in stampa per le righe di totale.
  • Gli importi sono espressi nella divisa di conto (w-currency-conto) letta all'avvio.

Storico modifiche

  • Modifica Gianluca: aggiunta l'impostazione zs5-scrivi-dettaglio = "S" nella chiamata a COGZS5.
  • Autore originale: Borghesan Gian Luca (Eurosystem). Conversione Windows: Claudio, 27/02/2006.