Vai al contenuto

COGZ80 -- Stampa piani di fabbricazione (dispatcher)

Sorgente: cbl/cogz80.cbl | Tipo: Programma di menu / dispatcher stampa | Program-ID: COGZ80

Menu: Lab.Odont. > Archivi > Stampe [Piani Fabbricazione]


Scopo

COGZ80 e' il programma di lancio della stampa dei piani di fabbricazione del laboratorio odontotecnico. Non produce direttamente la stampa: legge una configurazione aziendale e, in base al suo valore, richiama il motore di stampa appropriato:

  • COGZ80M -- versione "Modulo A4" basata su modello Word (WORDMDL), quando la configurazione vale WORD;
  • COGZ80L -- versione stampa Laser standard, in tutti gli altri casi.

E' quindi un dispatcher che seleziona il formato/motore di stampa e delega interamente la maschera e la generazione del documento al worker chiamato.

File e tabelle principali

File/Tabella Copybook Uso
FEURTAB cogfiles.cpy Parametri generali / path tabelle azienda (aperto in open-files, letto da rd-azi)
COGTABEL cogtabel.cpy (+ cnfgprnt.cpy, cogtabel.k01) Tabella generale, dichiarata external; usata dalle routine di stampa condivise

Programmi chiamati

Programma Scopo
COGZ80M Motore di stampa piani di fabbricazione su modello Word/A4 (WORDMDL). Chiamato quando MODO-STAMPA-ALLEGATI = "WORD"
COGZ80L Motore di stampa piani di fabbricazione versione Laser standard. Chiamato negli altri casi
RNEWCONF Lettura della configurazione che pilota la scelta del motore di stampa

Flusso principale

  1. main / a000 -- inizializza (prog-err, w-nome-hlp), apre i file (open-files), legge l'anagrafica azienda (rd-azi), inizializza la finestra (z-99-init-program) e legge la configurazione via x99-rnewconf.
  2. x99-rnewconf -- interroga RNEWCONF con pacchetto C, gruppo ODONTO, chiave MODO-STAMPA-ALLEGATI; il valore restituito e' salvato in tm-cfg-modo-allegati.
  3. a001 -- dispatch: se tm-cfg-modo-allegati = "WORD" chiama COGZ80M (poi cancel), altrimenti chiama COGZ80L (poi cancel). Entrambi ricevono stringhe (linkage wcont.cpy / wcont1.cpy).
  4. fine / z-chiudi -- chiude la finestra (z-99-exit-program) e termina (exit program).

Note

  • La scelta Word vs Laser e' pilotata dalla configurazione RNEWCONF pacchetto C, gruppo ODONTO, chiave MODO-STAMPA-ALLEGATI.
  • Il worker COGZ80M genera il documento tramite WORDMDL (modello Word A4), mentre COGZ80L produce la stampa Laser standard: la logica di composizione e i dati del piano risiedono interamente nei worker, non in COGZ80.
  • La chiave primaria cogtabel.k01 e' inclusa a fine procedure division. COGTABEL e' dichiarata external (condivisa con le routine di stampa incluse).

Documentazione tecnica -- 2026-08-05