Vai al contenuto

COGZDD — Lista impegni per reparto

Campo Valore
Sorgente cbl/cogzdd.cbl
Program-ID cogzdd
Tipo Maschera GUI con griglia (lista lavori + esecuzione mansioni)
Posizione menu Lab.Odont. > Operativo > Impegni > Lista impegni per reparto

Scopo

Mostra in griglia i lavori (impegni) di produzione ancora da eseguire per un reparto del laboratorio, con la relativa capacita' del reparto (totale, residua, occupabile) alla data odierna. Per ciascun lavoro l'operatore puo' avviare l'evasione della mansione, che a seconda del "modo di evasione" del reparto/mansione segue percorsi diversi (evasione diretta, tramite accettazione, macro-progettazione o progettazione). E' una postazione operativa di reparto: la lista si ricarica automaticamente a intervalli (auto-refresh configurabile) e alla riga selezionata si applica l'operazione scelta.

Puo' essere avviato dal menu, richiamato da altro programma (cogzdd-called = "COGZDD-CALLED") o via parametro di menu (wo-parametro = reparto).

Struttura e flusso

  • apri: init standard, open-files, lettura configurazione (x99-load-config); costruzione del menu contestuale di griglia; caricamento bitmap e pulsanti custom (F1 ricarica, F5 stato commessa); preparazione griglia (z-prepara-tm-grid).
  • a4: svuota la griglia, imposta il reparto (da linkage se richiamato), la sede di default (az-main-mag letta da COGMAGAZ), l'ordinamento predefinito (priorita', data impegno, data/ora arrivo, commessa, sequenza); carica l'eventuale filtro di default (z-imppredf-carica-default).
  • a-tm-rep / a-tm-commessa: accept dei filtri reparto (validato su COGTABEL tipo 85, aiuto via send-w80) e commessa.
  • a-leggi-dati: legge il tempo di refresh da configurazione (cogzdd-tempo-refresh), apre il file di transito di griglia, crea il transito (z-grid-det-crea-transito) e lo riordina.
  • z-grid-det-crea-transito: calcola i totali del reparto — capacita' totale (capacita-totale), lavori/impegno evasi in giornata (totali-evasi) — poi scandisce LODCMASI per reparto e impegni non evasi (chiave chia2), popolando la griglia con carica-dati/z-grid-det-riempi-t-rec. Calcola capacita' residua e occupabile.
  • capacita-totale: legge la capacita' massima del reparto da LODIMPMD (impegno per periodo, valido alla data odierna) o, in mancanza, da LODIMPRS.
  • z-grid-det-riempi-campi-t-gor: per ogni impegno recupera i dati del sottoarticolo (LODCMASV), della prescrizione (LODPRESC, chiave chia4), della testata commessa (LODCMTES), del flag esportazione (LODCMAG2), l'anagrafica cliente (COGGEANA) e la descrizione della mansione/sottoreparto (LODTABEL tipo 11). Determina il modo di evasione (t-gor-r-modo-eva) dalla mansione o dal reparto.
  • a-grid / z-99-accept-grid-det: gestione della griglia con auto-refresh (f-tempo-scaduto ricarica i dati mantenendo la posizione tramite tm-id-restart); F1 ricarica, S-F4 personalizza griglia (GRIDADMN), S-F5 esporta in Excel, F5 apre lo stato commessa (COGZ50), INVIO/doppio click esegue la mansione sulla riga selezionata.
  • Esecuzione mansione (in base a tm-r-modo-eva):
  • "A" evasione-diretta: evade l'impegno (LODCMASI, flag lci-fl-evaso = "E"); se e' l'unico giorno o il primo giorno d'impegno esegue l'avanzamento dell'azione via COGZSC; quando tutti gli impegni del sottoarticolo sono evasi aggiorna LODCMASV e LODCMAG2 (per l'esportazione).
  • "B" evasione-accettaz: apre l'accettazione con COGZ40; se la commessa ha il cliente, chiede conferma e richiama l'evasione diretta.
  • "C" macro-progettazione: richiama COGZDA (macro di progettazione) poi l'evasione diretta.
  • "D" evasione-progettaz: evasione diretta senza avanzamento azioni, poi innesca la preparazione commessa via COGZD1.
  • fine / z-chiudi: chiude e cancella il transito di griglia, distrugge il menu, z-99-exit-program.

File e tabelle

Tabella Accesso Descrizione
LODCMASI (lci-) Lettura/riscrittura (chiavi chia2, chia5) Impegni di produzione del sottoarticolo: reparto (lci-reparto), data impegno, flag evaso/cancellato, impegno (minuti/elementi)
LODCMASV (lcv-) Lettura/riscrittura (chiavi chia4, chia7) Sottoarticolo di commessa: priorita', sequenza, reparto/sottoreparto, flag evaso
LODPRESC (lpm-) Lettura (chiave chia4, con lock in scrittura) Prescrizione/commessa: cliente (lpm-med), dottore, paziente
LODCMTES (lct-) Lettura Testata commessa: cassetta
LODCMAG2 (lc2-) Lettura/scrittura/riscrittura Dati aggiuntivi commessa: data/ora arrivo, flag esportazione B.I.
LODIMPMD (irsp-) Lettura Impegno reparto per periodo (capacita' massima valida alla data)
LODIMPRS (irs-) Lettura Impegno massimo reparto/sottoreparto (fallback capacita')
COGTABEL (euta-) Lettura Descrizione reparto (tipo 85) e modo di evasione reparto
LODTABEL (lta-) Lettura Descrizione mansione/sottoreparto (tipo 11) e modo di evasione
COGGEANA (ana-) Lettura Anagrafica cliente (nome)
COGMAGAZ (magz-) Lettura Anagrafica magazzino/sede
t-grid-det File transito di griglia (i-o) Righe della griglia (una per impegno)

Copybook principali

Copybook Ruolo
cogzdd.select / cogzdd.fd / cogzdd.wrk / cogzdd.tm / cogzdd.prc / cogzdd.decla / cogzdd-01.scr Componenti generati da Screen Designer
cogzdd.imppredf / cogzdd.imppredf-wrk / utilimppredf.cpy Filtri predefiniti
wgrid.cpy, utilgdad.cpy Infrastruttura griglia + GRIDADMN
k-personal.cpy Costanti di personalizzazione azienda
utils52.cpy, utils93.cpy, utilu20.cpy, utilw80.cpy Interfacce utility di maschera / aiuto
utilncnf.cpy Lettura configurazioni
utilcogzsc.cpy, utilcogzda.cpy, utilz40.cpy, utilz50.cpy, utilzd1.cpy Linkage dei programmi di evasione/accettazione/progettazione
utilcogzdd.cpy Linkage di chiamata (operatore, reparto)
lodpresc.k04, lodcmasv.k04, lodcmasv.k07, lodcmasi.k02, lodcmasi.k05 Chiavi secondarie
wstato, wopenf, wgrave, wnscr, cogazien Working storage standard + dati azienda
grave, mmmask, opengen, stato, stato1, winmsg, sendw80 Copybook di fine procedure

Programmi chiamati

Programma Interfaccia Scopo
COGZSC utilcogzsc.cpy (util-cogzsc) Avanzamento dell'azione in evasione diretta (cogzsc-ope = "EVASIONE")
COGZ40 utilz40.cpy (z40-called) Accettazione (modo evasione "B")
COGZDA utilcogzda.cpy (cogzda-*) Macro-progettazione (modo evasione "C")
COGZD1 utilzd1.cpy (zd1-called) Preparazione commessa / progettazione (modo evasione "D")
COGZ50 utilz50.cpy (z50-called) Visualizzazione stato commessa (F5)
GRIDADMN utilgdad.cpy Personalizzazione/gestione griglia
RNEWCONF utilncnf.cpy Lettura configurazioni
COGW80 (via send-w80) utilw80.cpy Aiuto reparto (tipo 85)

Configurazioni (RNEWCONF)

Gruppo Chiave Uso
ABILITA LABOD-PROGETTAZIONE Modalita' progettazione (tm-cfg-modalita-prog)
labprepara cogzdd-tempo-refresh (sudd. per reparto) Intervallo di auto-refresh della lista in secondi (tm-cfg-refresh)

Note

  • La lista si auto-ricarica: se scade il tempo (f-tempo-scaduto) il programma memorizza la riga corrente in tm-id-restart e rilegge i dati, ripristinando poi la posizione.
  • Il "modo di evasione" (tm-r-modo-eva) e' letto dalla mansione (LODTABEL tipo 11, lta-11-modo-evasione); se assente si usa quello del reparto (euta-rp-modo-evasione). Determina quale flusso di evasione applicare alla riga selezionata.
  • L'evasione diretta aggiorna in cascata l'impegno (LODCMASI), il sottoarticolo (LODCMASV, quando tutti gli impegni sono evasi) e il flag di esportazione B.I. (LODCMAG2).