COGZ41 — Preparazione commessa (fase 1)
| Campo |
Valore |
| Sorgente |
cbl/cogz41.cbl |
| Program-ID |
cogz41 |
| Tipo |
Maschera GUI interattiva (griglia di dettaglio) |
| Posizione menu |
Lab.Odont. > Operativo > Preparazione commessa #1 |
Scopo
E' la fase centrale del ciclo produttivo del laboratorio odontotecnico: la "preparazione commessa". Consiste nell'attribuire a una commessa (identificata dalla prescrizione: studio medico / paziente / progressivo) un piano di fabbricazione personalizzato, di tipo "TEMPORANEO", derivato da un piano standard (COGZ20). In questa fase vengono generati i record della commessa (testata, righe-fase, materiali, descrizioni) partendo dal piano di fabbricazione, e vengono calcolate le date di consegna/impegno. E' costruito sulla falsariga di COGZ20, ma con in piu' la selezione iniziale della commessa e tutta la logica di apertura/blocco/rifacimento/impegni. Usa il file di configurazione ODONTO.CNF.
Struttura e flusso
- La struttura in memoria
tab-maschera contiene i dati della commessa (tm-presc, tm-num, tm-des, stato, dispositivo, flag preventivo/progetto/immagine, riferimento/rifacimento, date entrata/scadenza, importi preventivo/bollettato/prestazioni) e la tabella righe tm-righe (occurs 800) con le fasi/azioni del piano.
- apri:
z-99-init-program, ctr-abil, rd-azi, open-files; attiva un ampio set di tasti funzione; carica bitmap labodonto/varie e crea numerosi pulsanti custom (Commessa F5, Togli apertura F7, Rientro F6, Riapri F1, Gestione F6, Prestazione F1, Materiali F5, Rinumera F4, Note F9, Inserisci F7, Prescrizione S-F1, Avanzamento S-F5, Blocca/Sblocca commessa F6/F2, Fascicolo tecnico S-F7); legge la configurazione (x99-confi, x99-confi-indice); prepara la griglia e la ricerca prescrizione (COGS98W). Se richiamato (z41-called = "COGZ41-CALLED") precarica prescrizione, piano e intervallo righe dalla linkage utilz41.
- a4: chiude/riapre i file temporanei
lodtmmat e lodtmdes in output esclusivo come lock di funzione (se gia' in uso, esce); reset tab-maschera con default (modificabile "S", non bloccata, riferimento "C", ecc.); memorizza data/ora inizio preparazione; per la personalizzazione Modena Enterprise abilita la selezione multipla (tm-selezione-multipla).
- a-tm-cli: accept dei campi prescrizione via COGS98W (
z-s98-tm-presc); F1 apre la configurazione.
- a-fine-chiave:
x-controlla-chiave; legge la prescrizione (rd-lodpresc-lk) e ne ricava numero commessa, data, flag preventivo/progetto, data/ora scadenza, flag rifacimento e percentuale responsabilita' (100/50/0 → A/B/C); verifica che l'apertura commessa sia gia' stata eseguita (LODCMTES chiave 2). Segnala se la commessa e' chiusa/evasa.
- Griglia fasi: la griglia (gestita via GRIDADMN) mostra le azioni del piano con sequenza, azione, reparto, flag, giorni da inizio, date impegno/riapertura/fine, note. Sul dettaglio riga sono disponibili: Prestazione (F1, COGZ31), Materiali (F5, COGZ25/COGZ30 per controllo allergie), Gestione (F6), Avanzamenti (S-F5, COGZ45), Note (F9, COGZDEW).
- Salvataggio (blocco
d-varia e successivi, dopo F3 conferma):
- aggiorna LODPRESC (tipo dispositivo), LODPNTES (descrizione lavoro), LODCMTES (reparto);
- se la commessa e' ancora aperta cancella i dati precedenti (
del-lodpnrig, del-lodpnmat, del-lodcmrig, del-lodcmdet, del-loddescr);
- rigenera le righe dal piano: per ogni azione
wr-lodpnrig (riga piano temporaneo) e wr-lodcmrig (riga commessa, con azione, data/ora consegna, data impegno calcolata da tm-cfg-labod-impegni); memorizza la data consegna sulla prescrizione;
- genera i materiali/prestazioni: da LODPNMAT temporaneo scrive LODTMMAT (con controllo allergie via COGZ30 ed esclusione secondo
tm-cfg-escludi);
- copia le descrizioni commessa e riga da LODTMDES a LODDESCR;
- aggiorna LODPRESC: stato "A" (se era "N"), flag rifacimento e percentuale responsabilita', blocco rifacimento se responsabilita' cliente;
- se tutte le azioni erano chiuse chiede conferma chiusura commessa (stato "C");
- post-elaborazioni: invio email ai responsabili in caso di rifacimento (POSTA), creazione Rapporto Non Conformita' (COGZ39), blocco commessa (se richiesto), stampa scheda interna (COGZB6), ricalcolo impegni (COGZC5 delete+insert oppure COGZCF modifica aggregato).
- Altri comandi testata: Blocca/Sblocca commessa (F6/F2), Togli apertura (F7), Riapri (F1, condizionata dalla configurazione riapertura), Fascicolo tecnico (S-F7, COGZ51), stampa/visualizza commessa (COGZ88), avvisi (COGZC1), visualizzazione impegni (COGZC8).
- fine / z-chiudi:
z-close-files, chiusura e delete dei temporanei, z-99-exit-program, exit program.
Tabelle utilizzate
| Tabella |
Accesso |
Descrizione |
LODPRESC (lpm-) |
Lettura/Riscrittura |
Prescrizione: stato, flag rifacimento/preventivo/progetto, dottore, date consegna |
LODCMTES (lct-) |
Lettura/Riscrittura (chiave 2) |
Testata commessa: piano, reparto, coefficiente |
LODCMRIG (lcr-) |
Lettura/Scrittura/Cancellazione |
Righe commessa (una per azione): azione, date consegna/impegno |
LODCMDET (lcd-) |
Scrittura/Cancellazione |
Dettaglio riga (minuti/ore per fase) |
LODCMAGG (lcg-) |
Lettura/Riscrittura |
Aggregato commessa (importi/stato) |
LODCMAG2 (lc2-) |
Lettura/Scrittura |
Flag di stato aggiuntivi commessa |
LODDESCR (lde-) |
Lettura/Scrittura/Cancellazione |
Descrizioni/note (testata e riga) |
LODPNTES (lpt-) |
Lettura/Riscrittura |
Testata piano di fabbricazione (temporaneo per commessa) |
LODPNRIG (lpr-) |
Lettura/Scrittura/Cancellazione |
Righe azione del piano |
LODPNMAT (lmt-) |
Scrittura/Cancellazione |
Materiali/prestazioni del piano |
LODAZION (laz-) |
Lettura |
Catalogo azioni |
LODTABEL (lta-) |
Lettura |
Tabelle (reparti, sottoreparti, dispositivi) |
LODINFCC (icc-) |
Lettura |
Info documenti/bollettini della commessa |
LODRAPNC (rnc-) |
Lettura |
Rapporti Non Conformita' (rifacimenti) |
LODPFSTD (pfs-) |
Lettura |
Piani standard per cliente/dispositivo |
COGMERCI (mer-) |
Lettura |
Catalogo merci |
COGTABEL (euta-) |
Lettura |
Tabelle di sistema (reparti/sottoreparti) |
COGRACBB (rbb-) |
Lettura |
Relazione commessa-documenti |
LODTMMAT (ltm-) |
I-O (temp) |
Buffer materiali/prestazioni per operatore |
LODTMDES (ltd-) |
I-O (temp) |
Buffer descrizioni per operatore |
| FEURTAB |
Lettura |
Parametri/anagrafica azienda (cogfiles.cpy) |
Programmi chiamati
| Programma |
Interfaccia |
Scopo |
| COGS98W |
utils98.cpy |
Ricerca / display prescrizione-commessa |
| GRIDADMN |
utilgdad.cpy |
Gestore griglia delle fasi |
| COGZ23 |
utilz23.cpy |
Ricerca / catalogo azioni |
| COGZ25 |
utilz25.cpy |
Estrazione materiali per azione |
| COGZ30 |
utilz30.cpy |
Estrazione piano / controllo materiali allergici |
| COGZ31 |
utilz31.cpy |
Gestione prestazioni/materiali per azione |
| COGZ39 |
utilz39.cpy |
Gestione Rapporti Non Conformita' (rifacimenti) |
| COGZ45 |
utilz45.cpy |
Gestione avanzamenti |
| COGZ51 |
utilz51.cpy |
Visualizzazione fascicolo tecnico |
| COGZ61 |
utilz61.cpy |
Calcolo importi prestazioni da fatturare |
| COGZ88 |
utilz88.cpy |
Stampa/visualizzazione commessa |
| COGZB6 |
utilzb6.cpy |
Stampa scheda interna |
| COGZC1 |
utilzc1.cpy |
Gestione avvisi |
| COGZC5 |
utilcogzc5.cpy |
Gestione impegni commessa (delete+insert) |
| COGZC8 |
utilcogzc8.cpy |
Visualizzazione impegni |
| COGZCF |
utilcogzcf.cpy |
Ricalcolo costi/impegni aggregati |
| COGZDEW |
utilzde.cpy |
Editor note lavoro (via LODTMDES) |
| COGU06 |
utilu06.cpy |
Visualizzazione documenti/immagini |
| COGU10W |
utilu10.cpy |
Edit importi/valori con divisa |
| COGF12 |
utilf12.cpy |
Gestione sottoreparti |
| COGZ93 |
utilz93.cpy |
Scelta tipo dispositivo |
| WINZ07 |
utilwz07.cpy |
Selettore piano di fabbricazione |
| DIALOGS |
utildlg.cpy |
Dialog / menu a pulsanti |
| POSTA |
utilpost.cpy / utilmymail.cpy |
Invio email (notifiche rifacimento) |
| COGS52W / COGS93W / COGU20W / COGS60 / COGS95 |
(gestori controlli) |
Data / ora / numero / combo / check-box |
| RNEWCONF |
utilncnf.cpy |
Lettura configurazione da odonto.CNF |
Copybook principali
| Copybook |
Ruolo |
cogz41.select / cogz41.fd / cogz41.wrk / cogz41.prc / cogz41.decla / cogz41-01.scr |
Componenti generati da Screen Designer |
feurtab.fd, cogfiles.cpy |
FD FEURTAB |
k-personal.cpy |
Costanti di personalizzazione (k-personal-lab-modent, ecc.) |
lodtmdes.fd/.cpy/.k01, lodtmmat.fd/.cpy/.k01 (external) |
File temporanei descrizioni / materiali |
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy |
Working storage standard + dati azienda |
wgrid.cpy, utilgdad.cpy |
Gestione griglia |
util*.cpy delle subroutine (s52, s93, s98, z25, z30, z31, z39, z93, zde, u06, u10, u20, w80, wz03, wz07, zc1, cogzc5, cogzc8, cogzcf, dlg, post, ...) |
Linkage dei moduli chiamati |
wcont.cpy, utilz23.cpy, utilz41.cpy, utilz45.cpy, utilz51.cpy, utilz61.cpy, utilf12.cpy, utilzb6.cpy, utilz88.cpy, wcont1.cpy |
Linkage di chiamata (interfaccia COGZ41 come chiamato + moduli richiamati) |
lodcmtes.k02, lodpfstd.k02, lodpresc.k04, lodinfcc.k02, lodrapnc.k02, lodtmdes.k01, lodtmmat.k01 |
Copybook chiavi secondarie |
grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy |
Copybook di fine procedure |
Configurazioni lette
Dal file ODONTO.CNF, tramite x99-confi / x99-confi-indice (RNEWCONF). Principali chiavi:
| Gruppo |
Chiave |
Variabile |
Uso |
odonto |
gestione-reparti |
tm-cfg-fl-rep |
Abilita gestione reparti |
odonto |
escludi-materiali-allergici |
tm-cfg-escludi |
Modalita' esclusione materiali allergici |
odonto |
selezione-mat-prest |
tm-cfg-mat-prest |
Selezione combinata materiali/prestazioni |
odonto |
azione-iniziale-automatica |
tm-cfg-azio-init-aut |
Azione iniziale automatica |
odonto |
z41-vis-importi |
tm-cfg-vis-importi |
Visualizzazione importi |
odonto |
modifica-commessa-con-documenti |
tm-cfg-mod-com-doc |
Consente modifica con documenti collegati |
labprepara |
des-lavoro-da-piano |
tm-cfg-des-piano |
Descrizione lavoro presa dal piano |
labprepara |
note-lavoro-su-fase |
tm-cfg-note-lavoro |
Note lavoro su fase (A/S/N) |
labprepara |
stampa-scheda-interna |
tm-cfg-scheda-interna |
Stampa scheda interna dopo il salvataggio |
labprepara |
riapertura-con-documenti |
tm-cfg-riapri-se-doc |
Riapertura con documenti collegati |
labprepara |
riapertura-con-stato |
tm-cfg-riapri-stato |
Riapertura in base allo stato |
labprepara |
azione-blocco-commessa |
tm-cfg-azione-blocco |
Codice azione di blocco volontario |
abilita |
labod-impegni |
tm-cfg-labod-impegni |
Gestione impegni (N/A/C) → COGZC5/COGZCF |
colori |
riga-griglia-warning |
tm-cfg-color-warning |
Colore riga di avviso in griglia |
x99-confi-indice carica inoltre tabelle di configurazione multi-valore: azioni gesso e azioni progetto (fino a 30 ciascuna), email responsabile commerciale e produzione (fino a 5 ciascuna).
Note
- I file temporanei
lodtmmat (external) e lodtmdes sono per-operatore e fungono da lock di funzione: l'apertura in output esclusivo fallisce se un'altra istanza dello stesso operatore e' attiva.
- La generazione delle righe commessa parte sempre dal piano di fabbricazione temporaneo (LODPNTES/LODPNRIG/LODPNMAT), che e' la copia del piano standard adattata alla commessa; questo garantisce la tracciabilita' del piano di origine delle righe.
- La logica di rifacimento (flag
tm-fl-rif, responsabilita' A/B/C = 100/50/0%) innesca la creazione di un Rapporto Non Conformita' (COGZ39) e l'invio di email ai responsabili.
- La gestione impegni (
tm-cfg-labod-impegni) e' condizionata dalla configurazione: "A"/"C" pilotano rispettivamente COGZC5 e COGZCF.
Storico modifiche
170908: introdotte le configurazioni note-lavoro-su-fase / scheda interna e i campi griglia relativi (grd-fl-su-scheda).
111219: aggiunta tm-ora-scadenza-prec (ora scadenza precedente).
100222: gestione selezione multipla per la personalizzazione Modena Enterprise (tm-selezione-multipla, k-personal-lab-modent).
100622: gestione modalita' progettazione "C" nel flusso di conferma.
110423: aggiunto il PID nel nome del file temporaneo descrizioni (w-ltd-nome).