Vai al contenuto

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.