COGZ88 - Modulo per controllo utente¶
Sorgente: cbl/cogz88.cbl | Program-ID: COGZ88 | Tipo: Programma lanciatore (dispatcher di stampa)
Menu: Lab.Odont. > Operativo > Stampe > Modulo x Controllo Utente (anche quinta voce di Lab.Odont. > Archivi > Stampe; richiamabile dallo Stato commessa)
Scopo¶
Lanciatore che seleziona e richiama il sottoprogramma di stampa del "modulo per controllo utente" (controllo del dispositivo medico sul paziente, direttiva CEE 93/42). Non stampa direttamente: in base alla personalizzazione aziendale e a due chiavi di configurazione ODONTO, costruisce dinamicamente il nome del programma di stampa e lo esegue.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | ISAM | Input | Parametri generali azienda (cogfiles.cpy) |
Il programma apre i file standard (open-files, rd-azi) ma la logica applicativa e' delegata ai sottoprogrammi chiamati.
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogz88.select, cogz88.fd, cogz88.wrk, cogz88-01.scr, cogz88.prc, cogz88.decla |
Screen Designer |
cogfiles.cpy |
Layout FEURTAB |
wstato, wopenf, wgrave, wnscr, cogazien |
Working storage standard + dati azienda |
utilncnf.cpy |
Linkage RNEWCONF |
wcont, wcont1 |
Contesto chiamata (linkage section) |
stato, stato1, winmsg, grave, mmmask, opengen |
Copybook fine procedure |
Logica (flusso, paragrafi principali)¶
- apri: init programma,
ctr-abil,rd-azi,open-files, poix99-confiper leggere la configurazione. - Priorita' di selezione del programma di stampa:
- Personalizzazione aziendale - se
az-personal not = spaces, costruiscename-prog = "COGZ88" + az-personale lo chiama (call name-prog); suon overflowripiega sua-10-standard, altrimenti va aa10-cancel. - Modalita' WORD (
a-10-standard) - setm-cfg-wordmdl = "WORD"chiamaCOGZ88M(generazione da modello Word). - Tipo modulo standard - se
tm-cfg-formatta not = spaces, costruiscename-prog = "COGZ88" + tm-cfg-formatta(es. COGZ88A/B/C) e lo chiama. - a10-cancel:
cancel name-prog. - fine/z-chiudi: chiude file/finestra, exit program.
Configurazione (RNEWCONF)¶
x99-confi legge (pacchetto "C", 2 chiavi) dal gruppo ODONTO:
| Chiave | Working | Uso |
|---|---|---|
TIPO-MODULO-CONTROLLO-UTENTE |
tm-cfg-formatta x(80) |
Suffisso del tipo modulo standard (concatenato a "COGZ88") |
modo-stampa-allegati |
tm-cfg-wordmdl x(10) |
Se "WORD" attiva il ramo COGZ88M |
CALL¶
| Programma | Scopo |
|---|---|
COGZ88 + az-personal |
Variante personalizzata aziendale (nome costruito a runtime) |
| COGZ88M | Stampa via modello Word (modo-stampa-allegati = WORD) |
COGZ88 + tipo modulo |
Sottoprogramma standard di stampa; esistono COGZ88A, COGZ88B, COGZ88C (nome costruito a runtime da tm-cfg-formatta) |
| RNEWCONF | Lettura configurazioni ODONTO |
Note¶
- I nomi dei sottoprogrammi sono costruiti dinamicamente (
string) e chiamati concall name-prog ... on overflow: qualunque suffisso configurato inTIPO-MODULO-CONTROLLO-UTENTEviene tentato, purche' il programma esista a runtime. - Il programma non produce messaggi di errore propri: eventuali messaggi provengono dai sottoprogrammi.
- Il ramo
az-personalha priorita' assoluta sugli altri due; la modalita' WORD ha priorita' sul tipo modulo standard. - Il titolo fisso del modulo puo' essere personalizzato lato sottoprogramma tramite la configurazione
titolo-modulo-controllo-utente(non letta da COGZ88 ma dai moduli stampati).