Vai al contenuto

COGZS9 - Estrazione XML dati laboratorio per WORDMDL

Campo Valore
Sorgente cbl/cogzs9.cbl
Tipo Subroutine
Chiamato da COGZ82M (stampa documenti laboratorio)
Righe sorgente ~645

Descrizione

Subroutine per l'estrazione dei dati di una commessa del laboratorio odontotecnico in formato XML, destinati al modulo WORDMDL per la generazione di documenti (Dichiarazione di Conformita', istruzioni d'uso, ecc.). Legge i dati dalla commessa, dalla prescrizione, dal piano di trattamento e dalle tabelle correlate, e li trasmette a WORDMDL come coppie tag/valore XML.

Estrae anche i dati dell'azienda (ragione sociale, indirizzo, P.IVA, localita') dall'anagrafica del cliente interno dell'azienda, e il codice PDF della commessa (tag LOD-PDF) dalla prima riga LODCMRIG.

File e tabelle

File/Tabella Tipo Descrizione
FEURTAB (lodfiles) Input Parametri generali (versione laboratorio)
Tabelle da cogzs9.select Input Tabelle laboratorio (commesse, prescrizioni, piani, ecc.)
COGASCII Input File di testo per lettura rischi e istruzioni per tipo dispositivo
LODINFAL Input Informazioni allegati laboratorio

Copybook principali

Copybook Descrizione
cogzs9.wrk / .select / .fd / .prc / .decla Screen Designer: working, select, fd, procedure, declaratives
k-personal.cpy Costanti personalizzazioni aziendali
utilwordmdl.cpy Interfaccia WORDMDL (scrittura tag XML)
utilzs0.cpy Interfaccia COGZS0 (dati specifici Wilocs)
utilzs1.cpy Interfaccia COGZS1 (dati generali commessa)
utilzs2.cpy Interfaccia COGZS2 (informazioni progetto)
utilzs4.cpy Interfaccia COGZS4 (lotti e materiali)
utilzs9.cpy Interfaccia del programma (linkage: zs9-commessa)
utilncnf.cpy Struttura per lettura configurazioni RNEWCONF
lodinfal.k02 Chiave secondaria file informazioni allegati

Chiamate a sottoprogrammi

Programma Scopo
COGZS1 Estrazione dati generali commessa (medico, data stampa, operatore, ecc.)
COGZS0 Estrazione dati specifici personalizzazione Wilocs
COGZS4 Estrazione lotti utilizzati e materiali per allegato
COGZS2 Estrazione informazioni progetto configurate
WORDMDL Scrittura tag XML (operazione "Aggiungi-XML")
RNEWCONF Lettura configurazioni: AZIENDA/ISCRIZIONE-MIN-SALUTE (iscrizione Ministero Salute) e ODONTO/INFO-PROGETTO-SU-ALLEGATI (indicizzata, fino a 20)

Tag XML generati

Dati azienda

Sezione aggiunta per includere i dati dell'azienda stessa (il laboratorio), prelevati dall'anagrafica del cliente interno (az-cli-int) anziche' dal cliente dell'ordine.

Tag Sorgente Descrizione
AZ-RAGSOC ana-nome (da az-cli-int) Ragione sociale dell'azienda
AZ-INDI ana-ind + ana-cap + ana-loca + ana-prov Indirizzo completo dell'azienda
AZ-PIVA ana-piva (da az-cli-int) Partita IVA dell'azienda
AZ-LOCALITA ana-loca (da az-cli-int) Localita' dell'azienda
AZ-ISCRIZIONE tm-cfg-iscr-min-salute (da RNEWCONF) Numero iscrizione al Ministero della Salute (configurazione AZIENDA/ISCRIZIONE-MIN-SALUTE)

Dati commessa

Tag Sorgente Descrizione
DATASIS data di sistema Data corrente (gg/mm/aaaa)
LOD-N-PRESC lpm-cod Numero prescrizione
LOD-CASSETTA lct-cassetta Numero cassetta
LOD-DATA-PRESC lpm-data Data prescrizione
LOD-DESC-DISP lde-des o lpt-des Descrizione dispositivo (da descrizioni o piano)
LOD-DESC-PAZIENTE lpm-paz o lpm-paz-esteso Nome paziente
LOD-COMMESSA lct-cod Codice commessa
LOD-PDF lcr-pdf (da LODCMRIG) Codice PDF della commessa (dalla prima riga LODCMRIG)
LOD-DATA-STAMPA zs1-data-stampa Data stampa documento
LOD-DESC-MEDICO ana-nome (+ ana-nome2) Nome medico (con eventuale seconda ragione sociale)
LOD-DESC-CLIENTE ana-nome Ragione sociale cliente
LOD-DESC-CLIENTE2 ana-nome2 Seconda ragione sociale cliente
LOD-INDI-CLIENTE ana-ind Indirizzo cliente
LOD-CAP-CLIENTE ana-cap CAP cliente
LOD-LOCA-CLIENTE ana-loca Localita' cliente
LOD-PROV-CLIENTE ana-prov Provincia cliente

Dati dispositivo e sicurezza

Tag Sorgente Descrizione
LOD-RISCHI file rischi/{tip-dsp}.txt Rischi residui per tipo dispositivo (TASK-2134)
LOD-ISTR-PART file istr-td-{tip-dsp}.txt Istruzioni particolari per tipo dispositivo
DEST-USO lde-des (tipo "T4") Destinazione d'uso
VITA-UM lta-08-vita-um Unita' di misura vita prevista (Giorni/Mesi/Anni)
VITA-QTA lta-08-vita-qta Quantita' vita prevista
GG-INST lta-08-gg Giorni di installazione (TASK-2134)

Dati documento e lotti

Tag Sorgente Descrizione
LOD-OPE-CONS zs1-ope-cons-n Operatore consegna
LOD-TIP-DOC zs1-tip-doc Tipo documento
LOD-NUM-DOC zs1-num-doc Numero documento
LOD-DATA-DOC zs1-data-doc Data documento
LOD-LOTTI zs4-note Elenco lotti utilizzati (da COGZS4)
LOD-INFO-{n} zs2-note Informazioni progetto configurate (fino a 20, da RNEWCONF)
LOD-MAT-ALL-{info} zs4-note Materiali per allegato (da LODINFAL + COGZS4)

Logica di elaborazione

Flusso principale

  1. Apertura file, lettura configurazione AZIENDA/ISCRIZIONE-MIN-SALUTE (iscrizione al Ministero della Salute per il tag AZ-ISCRIZIONE) e configurazioni indicizzate (ODONTO / INFO-PROGETTO-SU-ALLEGATI, fino a 20 indici).
  2. Caricamento dati commessa: lettura da LODCMTES (testata commessa), LODCMAGG (aggregati commessa), LODPRESC (prescrizione), LODPNTES (piano trattamento).
  3. Estrazione dati generali: chiamata a COGZS1 per dati derivati (medico, data stampa, ecc.).
  4. Sezione DATI AZIENDA: lettura anagrafica del cliente interno (az-cli-int) e scrittura tag AZ-RAGSOC, AZ-INDI, AZ-PIVA, AZ-ISCRIZIONE.
  5. Sezione dati commessa: scrittura di tutti i tag relativi a prescrizione, paziente, medico, cliente.
  6. Dati dispositivo: lettura rischi e istruzioni da file di testo su disco (rischi/{tip-dsp}.txt, istr-td-{tip-dsp}.txt), vita prevista da LODTABEL.
  7. Lotti e materiali: estrazione lotti tramite COGZS4 e informazioni progetto tramite COGZS2.
  8. Materiali allegati: scan di LODINFAL per estrarre i materiali associati agli allegati.

Paragrafo scrivi-tag

Paragrafo generico per la scrittura di un tag XML tramite WORDMDL. Gestisce automaticamente dati fino a 2000 byte nel campo wordmdl-dato, oppure dati piu' grandi tramite wordmdl-blob (flag wordmdl-fl-blob = "S").

Note

  • Il programma utilizza mmsubw.cpy (subroutine).
  • I dati azienda sono prelevati dal cliente interno (az-cli-int), non dal cliente della commessa. Questo perche' nei documenti di conformita' i dati del fabbricante (il laboratorio) devono essere quelli dell'azienda stessa.
  • Il tag AZ-ISCRIZIONE viene alimentato dalla configurazione RNEWCONF AZIENDA/ISCRIZIONE-MIN-SALUTE (campo tm-cfg-iscr-min-salute, 40 caratteri), non piu' dalla partita IVA del cliente interno.
  • I file di testo per rischi e istruzioni particolari sono cercati nella directory dei modelli (ext-mod-dir) con nome basato sul tipo dispositivo (lpm-tip-dsp). Se il file non esiste, viene restituito "NESSUNO" per i rischi o spazio vuoto per le istruzioni.
  • La lettura dei rischi da file (tag LOD-RISCHI) e' ora attiva per tutte le personalizzazioni, non solo Wilocs. La chiamata a COGZS0 per dati aggiuntivi resta condizionata alla personalizzazione Wilocs.
  • La chiamata a COGZS1 e' stata spostata prima della lettura anagrafica cliente (riorganizzazione flusso, non cambia logica).

Storico Modifiche

Build Descrizione
2026/0501 Aggiunti tag dati azienda (AZ-RAGSOC, AZ-INDI, AZ-PIVA, AZ-LOCALITA, AZ-ISCRIZIONE) e LOD-PDF. LOD-RISCHI esteso a tutti i clienti (rimossa restrizione Wilocs). Config AZIENDA/ISCRIZIONE-MIN-SALUTE per iscrizione Ministero della Salute