COGZ64 — Cancellazione commessa
| Campo |
Valore |
| Sorgente |
cbl/cogz64.cbl |
| Program-ID |
cogz64 |
| Tipo |
Maschera GUI interattiva |
| Posizione menu |
Lab.Odont. > Operativo > Cancellazione commessa |
Scopo
Consente di cancellare una commessa di laboratorio a partire dalla prescrizione (studio medico / paziente / progressivo). Il programma individua la prescrizione e la relativa testata commessa, effettua una serie di controlli di sicurezza (esistenza, aggancio a documenti/fatture, stato commessa) e, previa conferma, invoca i moduli di cancellazione degli impegni e della commessa vera e propria.
Struttura e flusso
- apri:
z-99-init-program, ctr-abil, rd-azi, open-files; attiva i tasti funzione (F3 conferma/aggiorna, F4 cancella, F8 aiuto/calendario, F9 ricerca avanzata); carica la bitmap labodonto e crea il pulsante custom "Commessa (F5)"; legge la configurazione (x99-confi); inizializza la subroutine di ricerca prescrizione (z-s98-init).
- a-tm-cli: accept dei campi prescrizione delegato alla subroutine COGS98W (studio/paziente/progressivo), tramite
z-s98-tm-presc. L'esito ("exit"/"prev"/"next") governa il flusso.
- x-controlla-commessa: verifica che la prescrizione esista su LODPRESC (
rd-lodpresc-lk), la ricarichi in griglia via COGS98W ("display"), e che esista la testata commessa su LODCMTES (chiave secondaria lct-chia2). Blocca la cancellazione se la commessa e' gia' legata a documenti/fatture:
- personalizzazione Wilocs (
az-personal = k-personal-lab-wilocs): controllo su COGRACBB (documenti accompagnatori, tipo "CD");
- tutti gli altri:
x-cerca-fattura scansiona COGRACBB → COGRACCO per trovare una fattura collegata (messaggio con anno/tipo/numero).
- Segnala inoltre lo stato commessa da
lpm-stato (N=non preparata, C=completa, E=evasa, A=in corso, U=sospesa).
- a-richiesta-conferma:
acc-conf; su conferma (F3) esegue la cancellazione.
- Cancellazione: se la configurazione impegni e' attiva (
tm-cfg-labod-impegni = "A" o "M") chiama COGZC5 per cancellare gli impegni della commessa (cogzc5-ope = "C", cogzc5-forza-cancella = "S"); poi chiama COGZ63 (z63-ope = "C", z63-com = numero commessa) per la cancellazione effettiva della commessa. Torna ad a4.
- fine / z-chiudi:
z-close-files, chiude la window, z-99-exit-program, cancel 'COGS98W', exit program.
Tabelle utilizzate
| Tabella |
Accesso |
Descrizione |
LODPRESC (lpm-) |
Lettura (lock) |
Prescrizione / commessa: chiave studio-paziente-progressivo, numero commessa, stato, dottore |
LODCMTES (lct-) |
Lettura (lock, chiave 2) |
Testata commessa: piano di fabbricazione (lct-piano), coefficiente (lct-coeff) |
COGRACBB (rbb-) |
Lettura (start/rdnxt) |
Righe abbinamento bolle: verifica aggancio a documenti/fatture (tipo "CD") |
COGRACCO (rac-) |
Lettura (start/rdnxt, chiave 2) |
Testate documenti/fatture: risale ad anno/tipo/numero fattura collegata |
| FEURTAB |
Lettura |
Parametri/anagrafica azienda (cogfiles.cpy) |
Programmi chiamati
| Programma |
Interfaccia |
Scopo |
| COGS98W |
utils98.cpy (util-s98) |
Ricerca / display prescrizione-commessa (studio, paziente, progressivo, numero) |
| COGS52W |
utils52.cpy |
Gestione controlli di maschera (combo, ecc.) |
| COGZ63 |
utilz63.cpy (util-z63) |
Cancellazione effettiva della commessa (z63-ope = "C") |
| COGZC5 |
utilcogzc5.cpy (util-cogzc5) |
Cancellazione impegni della commessa (solo se config impegni attiva) |
| RNEWCONF |
utilncnf.cpy |
Lettura configurazione da odonto.CNF |
Copybook principali
| Copybook |
Ruolo |
cogz64.select / cogz64.fd / cogz64.wrk / cogz64.prc / cogz64.decla / cogz64-01.scr |
Componenti generati da Screen Designer |
feurtab.fd, cogfiles.cpy |
FD FEURTAB |
k-personal.cpy |
Costanti di personalizzazione azienda (k-personal-lab-wilocs) |
wstato.cpy, wopenf.cpy, wgrave.cpy, wnscr.cpy, cogazien.cpy |
Working storage standard + dati azienda |
utils52.cpy, utils98.cpy, utilz63.cpy, utilcogzc5.cpy, utilncnf.cpy |
Linkage subroutine chiamate |
wcont.cpy, wcont1.cpy |
Linkage di chiamata (stringhe) |
lodpresc.k04, lodcmtes.k02, cogracco.k02 |
Copybook chiavi secondarie |
stato1.cpy, stato.cpy, winmsg.cpy, grave.cpy, mmmask.cpy, opengen.cpy |
Copybook di fine procedure |
Configurazioni lette
| File |
Gruppo |
Chiave |
Uso |
odonto.CNF |
abilita |
labod-impegni |
Se "A"/"M" attiva la cancellazione impegni via COGZC5 (tm-cfg-labod-impegni) |
Note
- La cancellazione vera e propria e' delegata a COGZ63; COGZ64 fa da front-end di selezione e controllo.
- Il blocco anti-cancellazione differisce per personalizzazione: solo Wilocs controlla i documenti accompagnatori, mentre per le altre installazioni il controllo e' sulle fatture (
x-cerca-fattura, introdotto per Mauro il 29.06.2021).
pd-esc-agg impostato a "S" (fl-esc-agg) per il comportamento di uscita.