Vai al contenuto

COGZ88M - Stampa commessa laboratorio su modello Word/Area Report

Campo Valore
Sorgente cbl/cogz88m.cbl
Tipo Programma interattivo (maschera)
Program-ID COGZ88M
Menu Laboratorio odontotecnico
Righe sorgente ~810

Descrizione

Programma per la stampa di una commessa del laboratorio odontotecnico su modello Word, gestito tramite il modulo WORDMDL (Word Model). L'operatore seleziona la commessa (cliente, paziente, numero) e il programma genera il documento a partire dal modello cogz88.doc (oppure cogz88-{personalizzazione}.doc per le aziende personalizzate), valorizzando i dati della commessa e producendo l'output sulla periferica scelta.

E' la variante "M" del documento commessa COGZ88. Come gli altri programmi di stampa su modello Word del laboratorio (vedi COGZ82M), supporta la generazione tramite Area Report, passando a WORDMDL i parametri di processo e programma MDC ricavati da COGPA3.

File e tabelle

File/Tabella Tipo Descrizione
FEURTAB (cogfiles) Input Parametri generali azienda
LODTMDES (lodtmdes) I-O File temporaneo descrizioni (testate)
LODTRDES (lodtrdes) I-O File temporaneo righe descrizioni
Tabelle da cogz88m.select I-O Tabelle gestionale e laboratorio (commesse, prescrizioni)

Copybook principali

Copybook Descrizione
cogz88m.wrk / .select / .fd / .scr / .prc / .decla Screen Designer: working, select, fd, screen, procedure, declaratives
utilcogpa3.cpy Interfaccia COGPA3 (scelta modello stampa / Area Report)
utils54.cpy Interfaccia COGS54 (selezione periferica di stampa)
utils98.cpy Interfaccia COGS98W (maschera selezione dati commessa)
utilzs9.cpy Interfaccia COGZS9 (estrazione XML dati laboratorio)
utilwordmdl.cpy Interfaccia WORDMDL (generazione documento Word/Area Report)
utilz88.cpy Interfaccia del programma (linkage)
lodtmdes.fd/.k01 / lodtrdes.fd/.k01 / lodcmtes.k02 Tracciati e chiavi descrizioni temporanee e testate commessa
mmmask.cpy + standard (wstato, wgrave, wnscr, wopenf, cogazien) Programma standalone

Chiamate a sottoprogrammi

Programma Scopo
COGPA3 Scelta del modello di stampa per il processo "COGZ88" (Area Report); restituisce l'ID modello in cogpa3-o-mdc-prog
COGS54 Selezione della periferica di stampa (s54-prf-sel)
COGS98W Gestione della maschera di selezione dei dati commessa (cliente, paziente, progressivo, numero)
COGZS9 Estrazione dei dati della commessa in formato XML per il documento
WORDMDL Generazione del documento Word/Area Report (apertura XML, scrittura tag, esecuzione/stampa)

Logica di elaborazione

Selezione dati commessa

La maschera acquisisce cliente (tm-cli), paziente (tm-paziente), progressivo (tm-pro) e numero commessa (tm-num). La gestione interattiva della selezione e' delegata a COGS98W tramite i paragrafi z-s98-* / fill-s98-* / flow-s98-*.

Preparazione stampa e Area Report (a-20 / a-20-cogs54)

Prima della selezione della periferica, il programma chiama COGPA3 con tipo documento "COGZ88" per individuare il modello/processo di stampa associato (integrazione Area Report). Il paragrafo e' stato suddiviso in a-20 (chiamata COGPA3, eseguita una sola volta) e a-20-cogs54 (selezione periferica con COGS54): in caso di ripetizione della scelta periferica il ciclo torna su a-20-cogs54, evitando di richiamare COGPA3 a ogni iterazione.

Generazione documento (stampa)

  1. Compone il nome del file XML di output (cogz88m.txt nella directory temporanea) e il path del modello Word (cogz88.doc oppure cogz88-{az-personal}.doc nella directory modelli).
  2. Apre il documento via WORDMDL operazione "Apri-XML", passando il modello locale e — per Area Report — cogpa3-tip in wordmdl-processo e cogpa3-o-mdc-prog in wordmdl-mdc-prog.
  3. Estrae i dati della commessa via COGZS9 (zs9-commessa = tm-num) e li scrive nei tag XML (scrivi-tag → WORDMDL "Aggiungi-XML").
  4. Chiude il flusso XML (WORDMDL "Chiudi-XML").
  5. stampa-fine: esegue il documento (WORDMDL "Esegui") indirizzandolo alla periferica selezionata (s54-prf-sel) e chiude WORDMDL.

Note

  • Il programma usa mmmask.cpy (standalone con gestione finestra propria).
  • La chiave secondaria lodcmtes.k02 e le chiavi lodtmdes.k01 / lodtrdes.k01 sono incluse manualmente in coda alla procedure division.
  • Il tipo processo per COGPA3 e' sempre "COGZ88", che identifica i modelli di stampa della commessa di laboratorio. Per il dettaglio della pipeline Word/Area Report vedere Stampe su Area-Report.

Storico modifiche

2026-06-25 -- Integrazione Area Report

Aggiunta la chiamata a COGPA3 (tipo documento "COGZ88") in a-20 per la scelta del modello di stampa e l'integrazione con Area Report. I valori restituiti cogpa3-tip e cogpa3-o-mdc-prog vengono propagati a WORDMDL come wordmdl-processo e wordmdl-mdc-prog. Il paragrafo a-20 e' stato suddiviso introducendo a-20-cogs54, in modo che la selezione della periferica possa ripetersi senza richiamare nuovamente COGPA3. Aggiunta la copy utilcogpa3.cpy.


Documentazione tecnica -- creata 2026-06-25