COGZ16 - Combinazione allegati per tipo commessa¶
Sorgente: cbl/cogz16.cbl | Program-ID: COGZ16 | Tipo: Programma interattivo di gestione tabella (maschera a chiave + set di flag/modelli)
Menu: Lab.Odont. > Archivi > Allegati > Combinazione allegati
Scopo¶
Definisce, per ogni combinazione di tipo commessa + tipologia cliente + settore di lavoro, quali allegati (documenti 93/42) devono essere prodotti e quali modelli di testo utilizzare. E' la tabella di configurazione che pilota la produzione automatica degli allegati quando si apre/evade una commessa di laboratorio.
La chiave e' composta da tre campi (tab-codkey):
- tm-tip-lavoro — tipo di commessa (default C);
- tm-tipologia-cl — tipologia cliente (2 caratteri, validata su COGTABEL tipo 84 con prefisso C);
- tm-tip-settore — settore di lavoro (default P).
Per ogni chiave l'operatore imposta i modelli dei singoli allegati (dich. conformita', dich. per paziente, dich. riparazione, dich. reperibilita', istruzioni d'uso, spec. installazione, doc. consegna) e due flag S/N (etichettatura, progetto tecnico). I dati vengono salvati come record LODTABEL tipo 9 (lta-tipo-09).
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | ISAM | Input | Parametri generali azienda (cogfiles.cpy) |
| LODTABEL | ISAM | I-O | Combinazione allegati tipo 9 (lta-tipo=9, lta-cod=tab-codkey, lta-tipo-09) |
| COGTABEL | ISAM | Input | Tabella tipologie cliente, tipo 84 chiave C<tipologia> (euta-tipo, euta-cod, euta-descr) |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogz16.select, cogz16.fd, cogz16.wrk, cogz16-01.scr, cogz16.prc, cogz16.decla |
Screen Designer |
feurtab.fd, cogfiles.cpy |
FEURTAB |
wstato, wopenf, wgrave, wnscr, cogazien |
Working storage standard + dati azienda |
utilf10.cpy |
Linkage COGF10 (aiuto tipologie cliente) |
utils52.cpy |
Linkage controlli COGS52 |
stato, stato1, winmsg, grave, mmmask, opengen |
Copybook fine procedure standard |
Logica¶
Programma goto-driven a due sezioni: la scheda "chiave" (tipo commessa, tipologia cliente, settore) e la scheda "dati" (modelli allegati + flag). Alla conferma della chiave viene caricata l'eventuale combinazione gia' presente; alla conferma dei dati viene riscritta.
- apri / main:
z-99-init-program,ctr-abil,rd-azi,open-files; abilitazione tasti F1-configura/F3-conferma/F3-aggiorna/F4-cancella/F8-aiuto/F8-calendario; titolo maschera,rd-msk-pop,z-costruisci-controlli. - a4: reset maschera con default (
tm-tip-lavoro="C",tm-tip-settore="P",tm-pro-tec="N",tm-fl-eti="N"); disattiva F3-aggiorna, attiva F3-conferma. - a-tm-tip-lavoro: accept tipo commessa (combo via COGS60).
- a-tm-tipologia-cl: accept tipologia cliente; F8 apre l'aiuto COGF10; validazione su COGTABEL tipo 84 (
C<cod>) inx-controlla-tm-tipologia-cl, con display della descrizione (euta-descr). - a-tm-tip-settore: accept settore (combo via COGS60); il relativo
x-controlla-tm-tip-settoreeseguea-carica. - a-carica: legge il record LODTABEL tipo 9 per la chiave corrente; se assente azzera
lta-tipo-09; caricatab-maschera-biscon i valori dei modelli/flag. - a-fine-dati:
x-imposta-conferma1(valida i tre campi chiave), poi passaggio alla scheda dati (disattiva F3-conferma, attiva F3-aggiorna). - a-tm-dic-cnf ... a-tm-pro-tec: accept dei singoli modelli/flag della scheda dati. Ogni campo modello e' validato solo per range
A-Z(A-Eper istruzioni d'uso); i controlli di esistenza del modello su LODTABEL tipo 10 sono presenti ma commentati. - a-richiesta-conferma:
x-imposta-conferma2(valida tutti i campi dati); su F3 conferma eseguea-aggiornae torna ada4. - a-aggiorna: scrive/riscrive il record LODTABEL tipo 9 con
tab-maschera-bisinlta-tipo-09(wr-lodtabel, in fallbackrwr-lodtabel). - fine / z-chiudi:
z-close-files,exit program.
CALL¶
| Programma | Scopo |
|---|---|
COGF10 |
Aiuto/selezione tipologia cliente (util-f10) |
Note¶
- Non esiste una vera cancellazione: la funzione gestisce solo inserimento/aggiornamento del record LODTABEL tipo 9 (F4 non e' operativo nella scheda dati).
- I controlli di esistenza dei singoli modelli allegato su LODTABEL tipo 10 sono presenti nel sorgente ma commentati: attualmente si valida solo il range
A-Z(oA-E) dei codici modello, non la loro effettiva codifica. - La tipologia cliente e' l'unico campo chiave validato contro un'anagrafica (COGTABEL tipo 84); tipo commessa e settore sono combo a valori fissi definiti in Screens (COGS60).
- Il codice e' legacy goto-driven; usa
exit paragraphnei controlli campo ma mantiene iGO TOdi navigazione tra gli accept.