COGZF9 -- Invio via e-mail dei certificati archiviati¶
Sorgente: cbl/cogzf9.cbl | Tipo: Programma di menu / elaborazione (maschera) | Program-ID: COGZF9
Menu: Lab.Odont. > Operativo > Varie [Invio x Mail Certificati Archiviati]
Scopo¶
COGZF9 raccoglie i documenti di certificazione archiviati otticamente per una commessa (o per tutte le commesse di un cliente in un intervallo di date), li estrae dall'archivio ottico, li converte in PDF, li comprime in un unico file ZIP e lo invia via e-mail al cliente.
Il programma opera su una cartella di lavoro locale (z-cert, sottocartella del percorso di spedizione generico configurato), che viene prima svuotata (cleanup FTP) e poi riempita con i PDF estratti dai documenti archiviati (istruzioni d'uso, dichiarazione di conformita', dichiarazione di reperibilita', documento di avvenuta consegna, ecc.). Al termine crea lo ZIP e, se la configurazione lo prevede, lo spedisce via e-mail all'indirizzo del cliente (ana-email).
Puo' lavorare in due modalita':
- Per commessa (
tm-commessavalorizzato): elabora la singola commessa e il relativo DDT. - Per cliente/fornitore + intervallo date (
tm-ana-cod+tm-data-ini/tm-data-fin): scandisce le bolle del nominativo nel periodo e ne estrae i certificati.
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| FEURTAB | cogfiles.cpy |
Parametri generali azienda (rd-azi) |
| COGGEANA | cogzf9.select (coggeana.fd, ana-rec) |
Anagrafica cliente/fornitore: ragione sociale ed e-mail (ana-email) del destinatario |
| COGTESBO | cogzf9.select (cogtesbo.fd, tes-rec) + cogtesbo.k02 |
Testate bolle: scansione dei DDT del nominativo per data (st-cogtesbo-notmin-chia2) |
| COGRACBB | cogzf9.select (cogracbb.fd, rbb-rec) + cogracbb.k02 |
Raccordi bollettini: legame bolla (rbb-b-bol) <-> commessa (rbb-a-bol), tipo "CD" |
| LODRACCO | cogzf9.select (lodracco.fd) |
Raccordi laboratorio (gestione tramite gestori generati) |
| LODPRESC | cogzf9.select (lodpresc.fd, lpm-rec) + lodpresc.k04 |
Prescrizione/commessa: stato (lpm-stato), medico (lpm-med), ora consegna (lpm-ora-cns); lettura per numero commessa via rd-lodpresc-chia4 |
| LODCMTES | cogzf9.select (lodcmtes.fd, lct-rec) |
Testata commessa: flag archiviazione (lct-fl-arc), aggiornamento flag allegati/etichette in evasione automatica |
| LODCMAG2 | cogzf9.select (lodcmag2.fd, lc2-rec) |
Dati aggiuntivi commessa: aggiornati in fase di evasione automatica |
Programmi chiamati¶
| Programma | Innesco | Ruolo |
|---|---|---|
| FTP | b-elabora (CleanupLocal), x-configurazione (CheckServer) |
Verifica server FTP e pulizia della cartella di lavoro locale (*.pdf, *.zip) |
| COGU06 | fill-u06-con-commessa / fill-u06-con-ddt (OTTIENI-NOME, Estrai-da-doc) |
Recupero nome e estrazione del documento archiviato otticamente per tipo documento e chiave (commessa o DDT) |
| SVIEW | converti-file-preparato-to-pdf (CONVERTI) |
Conversione in PDF dei documenti in formato non-PDF (accetta solo prn) |
| COPIAF | estrai-doc-con-u06, conversione |
Copia del documento estratto nella cartella di lavoro e cancellazione file temporanei (lato client) |
| ZIP | crea-zip (AGGIUNGI) |
Compressione di tutti i *.pdf della cartella in un unico .zip |
| POSTA | crea-mail (MyMail-Completo, con util-mymail) |
Invio dell'e-mail con lo ZIP in allegato all'indirizzo del cliente |
| COGZ62 | x-archivia (COGZ62-SLAVE) |
Archiviazione ottica della commessa (in modalita' evasione automatica) |
| COGS65W | z-carica-s65-ana-cod |
Gestione/aiuto del campo codice cliente/fornitore |
| RNEWCONF | x-configurazione |
Lettura dei parametri di configurazione |
Flusso principale¶
apri-- init programma, apertura file, lettura configurazione (x-configurazione) e verifica del server FTP.a4-- reset maschera; blocca l'esecuzione se manca il percorso output (stampe/path-spedizione-generico) o i parametri di pulizia (stampe/codice-server-ftp-generico).- Accept dei filtri: commessa (
a-tm-commessa, con F1 = riconfigura), cliente/fornitore (a-tm-ana-codvia COGS65W), data inizio/fine (a-tm-data-ini/a-tm-data-fin, con calendario COGS52). I controlli si escludono a vicenda: se la commessa e' valorizzata, cliente e date vengono disabilitati. a-richiesta-conferma-- con F3 valida tutti i campi (x-imposta-conferma), avvisa che la cartella verra' svuotata e lanciab-elabora.b-elabora-- pulizia FTP della cartella; poi:- Per commessa:
x-archivia(eventuale archiviazione automatica), risalita al DDT via COGRACBB (cerca-w-in-ddt-sub-commessa),read-and-check-commessa, lettura e-mail cliente,estrai-dati-sub-commessa. - Per cliente: scansione bolle (
b-10-loop) nel range date; per ogni bolla di tipo "B" (o "D" per personalizzazioneevolab) risale alla commessa via COGRACBB tipo "CD" e ne estrae i certificati. estrai-dati-sub-commessa-- per ogni voce della tabellatab-voci(8 tipi documento: L1/L3/L2/L7/L8/L9/LA/BU), se non esclusa da configurazione, estrae il documento via COGU06, lo copia nella cartella e lo converte in PDF se necessario.b-90-- se sono stati preparati documenti crea lo ZIP (crea-zip) e, secogzf9-invio-mailnon e' "N", invia l'e-mail (crea-mail).
Configurazione (RNEWCONF)¶
Pacchetto C, caricato in x-configurazione:
| Gruppo | Chiave | Variabile | Effetto |
|---|---|---|---|
| stampe | path-spedizione-generico | tm-cfg-path-output |
Percorso base; la cartella di lavoro e' <path>/z-cert |
| stampe | codice-server-ftp-generico | tm-cfg-server-ftp |
Server FTP per il cleanup della cartella di lavoro |
| ODONTO | invio-con-evasione-automatico | tm-cfg-evadi-auto |
Modalita' archiviazione/evasione automatica: E/R/S/N |
| stampe | cogzf9-invio-mail | tm-cfg-invio-mail |
Se N, esegue solo l'estrazione/ZIP senza inviare l'e-mail |
| stampe | cogzf9-escludi-classe (occurs 10) | tm-cfg-t-escludi-classi-cod |
Tipi documento (L1..LA/BU) da escludere dall'estrazione |
Note¶
read-and-check-commessaestrae i certificati solo per commesse in stato "C" (completa) o "E" (evasa), con flag archiviazionelct-fl-arc = "S"e con specifici minuti di ora consegna (lpm-ora-cns (2:2)diverso da 15/45).x-archivia(evasione automatica) richiama COGZ62 in modalita' SLAVE per archiviare la commessa;x-fleggaimposta i flaglct-fl-all/lct-fl-eti/lct-fl-arc= "S", promuove la prescrizione a stato "E" e aggiorna LODCMAG2.- La conversione in PDF (SVIEW) e' supportata solo per documenti in formato
prn; per altri formati non-PDF viene mostrato un avviso di contattare l'assistenza tecnica. - Per la personalizzazione
evolabsono ammesse anche le bolle di tipo "D" (oltre alle "B"). - Le chiavi secondarie
cogtesbo.k02,cogracbb.k02,lodpresc.k04sono incluse manualmente in coda alla procedure division (non generate da Screens). - Copybook di interfaccia inclusi:
utilz62.cpy,utils54.cpy,utils52.cpy,utils65.cpy,utilu06.cpy,utilzip.cpy,l-copiaf.cpy/u-copiaf.cpy,utilsview.cpy,utilpost.cpy,utilmymail.cpy,utilftp.cpy,utilncnf.cpy. Programma standalone (mmmask.cpy).
Documentazione tecnica -- 2026-08-05