COGT40 - Configurazione tipologie di segnalazione¶
Sorgente: cbl/cogt40.cbl | Tipo: Programma interattivo GUI con griglia | Program-ID: COGT40
Menu:
- Sistema > Configurazione > Segnalazioni
Scopo¶
Gestisce la configurazione delle tipologie di segnalazione del sistema di avvisi/notifiche (tabella COGSGTIP). Le tipologie sono divise in due categorie:
- Avvisi (categoria
A): situazioni monitorate a soglia temporale (ritardi su arrivi da fornitore, conferme ordine, restituzioni c/visione, articoli in sottoscorta, commesse non fatturate, ecc.); - Notifiche (categoria
N): eventi che generano una comunicazione verso un destinatario (richieste di riordino/prelevamento su commessa, modifiche a commessa di produzione, inserimento/variazione ordini, cancellazione DDT, ecc.).
L'elenco delle tipologie e' fisso e cablato nel programma (paragrafo carica-griglia): l'operatore non aggiunge o cancella righe, ma per ciascuna tipologia predefinita configura se e' attiva, le soglie in giorni, l'operatore amministratore e i flag di comportamento. Alla configurazione dei destinatari di ogni tipologia provvede il programma collegato COGT41 (categoria/codice passati in util-cogt41), richiamato sia con il tasto F2 dalla griglia sia automaticamente all'ingresso in modifica di una riga.
Struttura del programma¶
Struttura a griglia (e-tm-tab, gestita via GRIDADMN) con frame di dettaglio. La tabella interna tab-maschera (max k-max-ele-tab = 900, di fatto k-max-tipologie = 20 righe usate) rispecchia i record COGSGTIP. Ogni elemento tm-ele porta categoria (tm-r-cat), codice (tm-r-cod), descrizione (tm-r-des), flag attiva (tm-r-fl-attiva), le due soglie (tm-r-soglia-1, tm-r-soglia-2), operatore amministratore (tm-r-ope-amm + descrizione), e i flag tm-r-fl-ric-ope, tm-r-fl-risp, tm-r-fl-allarme.
Inizializzazione (apri)¶
z-99-init-program, ctr-abil, rd-azi, open-files. Predispone i tasti funzione (invio-modifica, F8 aiuto, F3 conferma, Shift-F4 griglia) e crea il pulsante custom "Destinatari attivita' (F2)" (load-bitmap-custom / x-display-push-button-custom, bitmap clipot). Imposta il titolo maschera, prepara controlli (z-costruisci-controlli) e griglia (z-prepara-tm-grid).
Caricamento (a4 / carica-griglia)¶
carica-griglia costruisce le 20 righe fisse (14 avvisi A/A..A/N, 7 notifiche N/A..N/G) con categoria, codice e descrizione cablati. Poi, per ciascuna riga, legge COGSGTIP (rd-cogsgtip): se il record esiste ne carica i valori di configurazione (attiva, soglie, operatore, flag) e la descrizione operatore da PRNTOPER (rd-prntoper); altrimenti imposta i flag a N. Costruisce infine la griglia (z-costruisci-grid).
Griglia (a-grid / a-accept-grid)¶
L'invio su una riga apre la modifica (go to a-riga-dettaglio), previa verifica di w-abi-agg. F2 richiama COGT41 per la gestione dei destinatari della tipologia selezionata. Shift-F4 apre la personalizzazione colonne (GRIDADMN).
Riga di dettaglio (a-riga-dettaglio ... a-fine-dettaglio)¶
Legge in lock COGSGTIP (rd-cogsgtip-lk), forza a N i flag non S, mostra il frame di dettaglio e accetta in sequenza i campi con navigazione F2 (indietro)/F3 (conferma): attiva (a-tm-r-fl-attiva, check via S95), soglia 1 e soglia 2 (a-tm-r-soglia-1/2), operatore amministratore (a-tm-r-ope-amm, con F8 che richiama COGT20 per l'help operatori), e i flag richiesta operatore / risposta / allarme (a-tm-r-fl-ric-ope, a-tm-r-fl-risp, a-tm-r-fl-allarme, check via S95). I campi soglie e flag notifica sono abilitati/disabilitati dinamicamente (x-enabled-*).
Conferma e scrittura (a-fine-dettaglio)¶
Richiama COGT41 (destinatari), esegue i controlli (x-controlla-dettaglio), chiede conferma, quindi valorizza sgt-rec dai campi di riga e scrive COGSGTIP (wr-cogsgtip, con fallback rwr-cogsgtip). Aggiorna la riga in griglia via GRIDADMN (Modify-Record) e torna alla griglia. a-riga-dettaglio-wesc ripristina il record originale (tm-ele-sav) in caso di annullamento.
Chiusura (fine / z-chiudi)¶
z-close-files, chiusura window, z-99-exit-program.
Controlli specifici¶
x-controlla-tm-r-soglia-2: per gli avvisi attivi (tm-r-cat = "A") impone almeno una soglia valorizzata e verifica la congruenza (soglia 2 non inferiore a soglia 1).x-controlla-tm-r-ope-amm: verifica l'esistenza dell'operatore suPRNTOPERe ne carica la descrizione.x-controlla-desti: per una tipologia attiva verifica che esista almeno un destinatario suCOGSGDST(scansionest-cogsgdst-notmin+rdnxt-cogsgdstsulla chiave categoria/codice), altrimenti blocca la conferma.
Tabelle e file¶
| File logico | Chiave / accesso | Descrizione |
|---|---|---|
| FEURTAB | - | Tabella di sistema (aperta via cogfiles.cpy) |
| COGSGTIP | primaria sgt-chia1 (sgt-cat + sgt-cod); accesso dinamico |
Configurazione tipologie segnalazione: flag attiva, soglie 1/2, operatore amministratore, flag richiesta operatore / risposta / allarme |
| COGSGDST | primaria sgd-chia1 (sgd-cat, sgd-cod, sgd-liv, ...); secondaria sgd-chia2 |
Destinatari delle tipologie di segnalazione; usato in sola lettura per verificare la presenza di almeno un destinatario |
| PRNTOPER | ptop-cod |
Anagrafica operatori: lettura descrizione (ptop-des) dell'operatore amministratore |
COPY incluse¶
Working-Storage¶
cogt40.wrk, wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy, wgrid.cpy, utilgdad.cpy, utilt20.cpy, utilcogt41.cpy
File section¶
cogt40.fd (con cogt40.select), cogfiles.cpy
Linkage¶
wcont.cpy, wcont1.cpy
Procedure Division¶
cogt40.decla, cogt40-01.scr (screen), grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy, utilgrid.cpy, cogt40.prc
Le routine di I/O su COGSGTIP, COGSGDST, PRNTOPER (st-, rdnxt-, rd-, wr-, rwr-) sono incluse tramite la catena di COPY generata. I gestori tabella Y* (generati dallo Screen Designer) forniscono l'accesso indicizzato.
CALL a sottoprogrammi¶
| Programma | Scopo |
|---|---|
| GRIDADMN | Gestione griglia (Prepara, Svuota-Tutto, Add-Record, Modify-Record) e personalizzazione colonne (Shift-F4) |
| COGT41 | Gestione dei destinatari della tipologia di segnalazione selezionata (F2 in griglia e ingresso in modifica), passando categoria/codice/descrizione in util-cogt41 |
| COGT20 | Help/selezione operatore amministratore (F8 sul campo operatore), restituisce t20-out-cod |
Configurazioni RNEWCONF¶
Il programma non contiene un paragrafo x99-confi e non legge chiavi RNEWCONF.
Note tecniche¶
- Tipologie cablate: l'insieme delle 20 tipologie (categoria + codice + descrizione) e' fisso nel codice (
carica-griglia);COGSGTIPmemorizza solo i parametri di configurazione, non l'esistenza della tipologia. L'inserimento di nuove tipologie richiede intervento sul sorgente. I codici sono documentati incostanti-sgn.cpy(citato nei commenti dicogsgtip.cpy). - Solo modifica: la funzione consente unicamente la modifica delle righe predefinite (nessun Ctrl-A/Ctrl-E); l'ingresso in dettaglio e' sempre in operazione "M".
- Soglie e flag notifica: soglia 1/soglia 2 (giorni) attivano i due livelli di segnalazione; i flag
ric-ope,risp,allarmehanno significato solo per le notifiche (vedicogsgtip.cpy). - Vincolo destinatari: una tipologia attiva non e' confermabile senza almeno un destinatario configurato in
COGSGDSTtramite COGT41.