COGZ85 -- Stampa etichette per cassetta (dispatcher)¶
Sorgente: cbl/cogz85.cbl | Tipo: Programma di menu / dispatcher stampa | Program-ID: COGZ85
Menu: Lab.Odont. > Operativo > Stampe [Etichette x Cassetta]
Scopo¶
COGZ85 e' il programma di lancio della stampa delle etichette per cassetta del laboratorio odontotecnico. E' un dispatcher: apre i file, verifica l'abilitazione del modulo e, in base alla personalizzazione dell'azienda, richiama il worker che genera realmente le etichette. Nel caso standard delega al motore COGZ85NO.
La maschera di selezione (studio medico, paziente, progressivo, commessa, copie, fila/colonna di partenza) e la generazione delle etichette (con i vari motori di stampa: EPL, Kyocera, HPGL, ecc.) risiedono nel worker chiamato, non in COGZ85.
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| FEURTAB | cogfiles.cpy |
Parametri generali / path tabelle azienda (aperto in open-files, letto da rd-azi) |
| LODTABEL | dichiarata in cogz85.select / cogz85.fd |
Tabella di laboratorio (file di appoggio del programma generato; chiusa in z-close-files) |
| FLSTA | flsta.cpy (flsta.fd) |
Print spool / file di stampa (dichiarato per le routine condivise) |
Programmi chiamati¶
| Programma | Scopo |
|---|---|
| COGZ85NO | Motore standard di stampa etichette per cassetta (fallback e caso non personalizzato) |
COGZ85<az-personal> |
Variante personalizzata di stampa etichette, se esiste per l'azienda in uso |
Flusso principale¶
main / apri-- inizializza (prog-err,w-nome-hlp), inizializza la finestra (z-99-init-program), eseguectr-abil(controllo abilitazione modulo), legge l'azienda (rd-azi) e apre i file (open-files).- Determina la personalizzazione: porta
az-intin maiuscolo (w-az-int). Seaz-personalnon e' vuoto e l'azienda non e' "CAD CAM DENTAL" (w-az-int(1:14) <> "CAD CAM DENTAL"), componename-call = 'COGZ85' az-personale chiama il worker personalizzato; in caso dion overflow(worker assente) ripiega sucall-standard. - Altrimenti (azienda non personalizzata, oppure "CAD CAM DENTAL" che vuole l'etichetta
standard pur condividendo la personalizzazione di "Bolognesi") esegue direttamente
call-standard. call-standard-- impostaname-call = "COGZ85NO"e chiama il worker standard; se va inon overflowmostra il messaggio "IMPOSSIBILE ESEGUIRE STAMPA !!" (box-msg).fine / z-chiudi--cancel name-call, chiude i file (z-close-files), chiude la finestra eexit program.
Note¶
- Il linkage
utilz85.cpyporta i parametri d'ingresso:z85-batch-mode(in chiamata esterna con"S"il programma si ferma solo alla richiesta di stampa -- gestito nei worker),z85-calledez85-presc(studio + paziente + progressivo). - Caso particolare documentato nel sorgente: "CAD CAM Dental" e "Bolognesi" condividono la
stessa personalizzazione (
az-personal), ma "CAD CAM Dental" richiede l'etichetta standard, percio' viene instradata al workerCOGZ85NO. - Il programma include la sezione screen e i copybook di gestione controlli/config generati da
Screens (
cogz85.wrk,.prc,.decla,cogz85-01.scrincbl/screens/), ma la sua procedure si limita ad aprire i file e a dispatchare: maschera, lettura configurazione di stampa (tm-cfg: tipo stampante, modello, dimensioni etichetta, ecc.) e composizione delle etichette sono a carico del worker chiamato. - La chiave primaria
lodtabel.k01e' inclusa a finecogz85.prc.
Documentazione tecnica -- 2026-08-05