COGZ81 - Stampa Specifiche di Installazione¶
Sorgente: cbl/cogz81.cbl | Program-ID: COGZ81 | Tipo: Programma interattivo con stampa (allegato commessa laboratorio)
Menu: Lab.Odont. > Operativo > Stampe > Allegati > Specifiche di Installazione
Scopo¶
Stampa l'allegato "Specifiche di Installazione" del dispositivo medico associato a una commessa di laboratorio. L'operatore identifica la commessa tramite la ricerca generica (studio/paziente/progressivo o numero commessa); il programma verifica prescrizione, stato commessa e appartenenza clinica, poi genera il documento HP-GL/2 su file di stampa (COGS54).
A differenza di COGZ83, il documento e' impaginato a pagina intera (una colonna, altezza font 14) con una testata che riporta Paziente, N.Presc., Commessa, Medico e Descrizione dispositivo. Il tipo allegato usato per leggere le descrizioni e' "S" + zs3-allegato (variabile w-allegato).
Se la configurazione MODO-STAMPA-ALLEGATI = "WORD", il programma delega la stampa a COGZ82M (allegato "SI") e termina.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | ISAM | Input | Parametri generali azienda (cogfiles.cpy) |
| LODDESCR | ISAM | Input | Descrizioni allegato per tipo (lde-tip, lde-cod, lde-pro, lde-rec) |
| LODTMDES | ISAM | I-O (temp) | Buffer temporaneo descrizioni per operatore (ltd-rec) |
| LODTRDES | ISAM | Input | Descrizioni impaginate a misura da COGZDEW (ltr-pro, ltr-des) |
| LODPRESC | ISAM | Input | Prescrizione (lpm-med, lpm-paz, lpm-pro, lpm-num, lpm-stato, lpm-data, lpm-cod) |
| LODCMTES | ISAM | Input (k02) | Testata commessa via chiave 2 (lct-chia2, lct-piano, lct-coeff, lct-paz, lct-rec) |
| LODPNTES | ISAM | Input | Testata piano/dispositivo (lpt-cod, lpt-tip, lpt-des) |
| LODTABEL | ISAM | Input | Titoli allegato tipo 10, chiave <all>T1/<all>T2 (lta-cod, lta-tipo, lta-10-des) |
| FLSTA | seq | Output | File di stampa HP-GL/2 (record riga) |
LODTMDES e' un temporaneo per operatore (w-ltd-nome = ext-tmp-dir + #$COGZ81.<operatore>), aperto in output esclusivo come lock di funzione.
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogz81.select, cogz81.fd, cogz81.wrk, cogz81-01.scr, cogz81.prc, cogz81.decla |
Screen Designer |
feurtab.fd, cogfiles.cpy |
FEURTAB |
lodtmdes.fd/.cpy/.k01, lodtrdes.fd/.cpy/.k01 |
File temporanei descrizioni |
flsta.fd/.cpy |
File di stampa |
wstato, wopenf, wgrave, wnscr, cogazien |
Working storage standard + dati azienda |
utils54, utils52, utils98, utilzde, utilfnt, utilzs1, utilzs3 |
Linkage subroutine COGS54/COGS52/COGS98W/COGZDEW/COGFNT/COGZS1/COGZS3 |
utilncnf |
Linkage RNEWCONF |
k-personal |
Costanti personalizzazioni azienda |
wcont, wcont1, utilz82 |
Linkage di chiamata |
lodcmtes.k02 |
Chiave secondaria commessa (aggiunta a fine procedure) |
Logica¶
Struttura goto-driven analoga a COGZ83. Flusso principale:
- apri / main: init, costruzione nomi temporanei,
rd-azi,open-files, recupero eventuali dati di chiamata (z82-called = "COGZ81-CALLED"), config viax99-confi/x99-confi-operatore. SeMODO-STAMPA-ALLEGATI = "WORD"chiamaCOGZ82M(allegato "SI") e va afine. Altrimenti prepara tasti, bitmaplabodonto, pulsante custom "Commessa (F5)", maschera. - a4: reset maschera, lock del temporaneo LODTMDES,
z-carica-controlli; se chiamato salta aa-10-cerca. - a-tm-cli: accept prescrizione via
COGS98W; gestione exit/prev/next. - x-controlla-commessa:
find+displaysu COGS98W (recuperalpm-reces98-o-paz-offset), controlla stato "C"/"E", legge testata commessa (rd-lodcmtes-lk-chia2), verifica clinica operatore, popola i campi testata (tab-commessa,tab-npresc,tab-paziente,tab-paz-esteso,tab-com-desda LODPNTES), chiamaCOGZS3(zs3-tip-doc = "Installazione") e componew-allegato = "S" + zs3-allegato. Sezs3-allegato = spaceblocca (allegato non previsto). - a-20: apertura file stampa via
COGS54e conferma periferica (F3), saltata in archiviazione conw-dc-fl-cogz50 = "S". - a-30: chiama
COGZS1(dati medico,zs1-medico) e di nuovoCOGZS3;b-caricaprepara le righe; loop sutm-cfg-n-copie: per ogni copiainit-data,x41-init-page,x4-format-page(testata),c-stampa,x41-close-page. - b-carica: copia da LODDESCR a LODTMDES le descrizioni del tipo
w-allegato, chiamaCOGZDEW(impaginazione, lunghezza 180), poi carica intab-all-desle righe rese in LODTRDES. - c-stampa: emette righe HP-GL/2 con titoli T1/T2 da LODTABEL centrati via
COGFNT; gestione salto pagina viad-rect/x4-format-page. - x4-format-page / testata: disegna i rettangoli e le etichette "SPECIFICHE DI INSTALLAZIONE", Paziente/N.Presc./Commessa/Medico/Descrizione; il nome paziente esteso e' spezzato in due righe da
p10-paziente. - fine / z-chiudi: chiusura,
cancelCOGZS3/COGS98W,exit program.
Configurazioni (RNEWCONF)¶
Percorso ODONTO.CNF (pacchetto "C"):
| Chiave | Uso |
|---|---|
fORMATTAZIONE-PORTRAIT |
Sequenza formattazione stampante (tm-cfg-formatta) |
COPIE-SPECIFICHE-INSTALLAZIONE |
Numero copie (tm-cfg-n-copie) |
MODO-STAMPA-ALLEGATI |
"WORD" delega a COGZ82M |
apo / operatore-clinica-su-lab (sud = operatore) |
Clinica dell'operatore (tm-cfg-clinica-ope) |
CALL¶
| Programma | Scopo |
|---|---|
COGS54 |
Apertura/chiusura file di stampa e richiesta periferica |
COGS98W |
Ricerca/accept generico prescrizione-commessa |
COGZDEW |
Impaginazione righe descrizione a misura |
COGFNT |
Calcolo lunghezza frase per centratura titoli |
COGZS1 |
Dati medico prescrittore (zs1-medico) |
COGZS3 |
Determina il modello di allegato (zs3-tip-doc = "Installazione") |
COGZ82M |
Stampa allegato in modalita' Word (allegato "SI") |
RNEWCONF |
Lettura configurazioni ODONTO / operatore |
ENCRYPT |
(Presente ma disabilitato, PBUG-1925) |
Note¶
- La gestione azienda criptata e' rimossa con PBUG-1925; resta
move az-int to tm-int. - Il tipo descrizione e'
"S" + <modello A..E>; in archiviazione (w-dc-archivia = "Archivia",w-dc-fl-cogz50 <> "S") le copie sono forzate a 1. - Output HP-GL/2 (emulazione
HPLJ3) a pagina intera; salto pagina governato daw-v-pose conteggio righe residuerig-rim.