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.