Vai al contenuto

COGQ82 - Gestione portastampi

Panoramica

COGQ82 e' un programma a griglia GUI (Screens) per la gestione anagrafica dei portastampi (stampi dello stampaggio), memorizzati nella tabella CLCPORTS. Funziona in due modalita': autonoma (aggiornamento: aggiunta, modifica ed eliminazione logica dei portastampi) oppure come modulo di selezione richiamato da un altro programma (restituisce il codice portastampo scelto in cogq82-portastampo). I dati vengono caricati su un file di transito griglia e riscritti su tabella alla conferma. Riceve l'area comune stringhe e l'area di interfaccia util-cogq82.

Posizione nel menu

Menu Percorso
Magazzino Produzione > Stampaggio > Gestione portastampi

Struttura del programma

File e tabelle utilizzati

File/Tabella Tipo Descrizione
CLCPORTS Indicizzato (i-o) Anagrafica portastampi (record pstm-rec): codice, descrizione, numero cavita', tipo canale, tipo stampo, flag di validita' pstm-val
COGTABEL Indicizzato (input) Tabelle di codifica; letta con euta-tipo-x = "AC" sul tipo stampo per validarne l'esistenza
T-GRID-DET Indicizzato (transito temporaneo) File di transito della griglia (record t-gor-r-rec), generato/gestito dal framework griglia; cancellato in chiusura

Copybook principali

Copybook Descrizione
cogq82.select / cogq82.fd / cogq82.wrk / cogq82.tm / cogq82.prc / cogq82.decla Componenti generati da Screens (file, working, campi tab-maschera, routine)
cogq82.imppredf-wrk / cogq82.imppredf Gestione filtri predefiniti/salvati della griglia
cogq82-01.scr Screen con la griglia e-grid-det
wgrid.cpy Framework di gestione griglia (transito, ordinamento, filtri, colonne)
utilgdad.cpy Area per GRIDADMN (amministrazione colonne griglia)
utilu10.cpy / utilu20.cpy Aree utility standard di maschera
utilcogqa3.cpy Area per COGQA3 (ricerca tipo stampo)
utilimppredf.cpy Area per la gestione filtri predefiniti
utilcogq82.cpy Area di interfaccia (linkage): cogq82-caller, cogq82-called, cogq82-portastampo
cogazien.cpy Dati azienda
wgrave / wnscr / wopenf / wstato / grave / mmmask / opengen / stato / stato1 / winmsg Copybook standard

Chiamate a sottoprogrammi (CALL)

Programma Scopo
GRIDADMN Amministrazione e formattazione della griglia (Prepara) e personalizzazione colonne (SF4)
COGQA3 Ricerca/selezione del tipo stampo (F8 sulla colonna tipo stampo); ritorna cogqa3-o-cod
W$MENU Attivazione del menu pop-up contestuale sulla griglia (right-click)

Le routine rd-clcports / wr-clcports / rwr-clcports / st-clcports-notmin e rd-cogtabel sono routine di I/O standard generate (copybook .prc).

Logica di elaborazione

  1. apri / main: inizializza il programma, apre i file, determina la modalita': se cogq82-called = k-program-id e cogq82-caller valorizzato -> modalita' Selezione (a-modalita = "S"), altrimenti Aggiornamento ("A"). Imposta i tasti funzione coerenti (in selezione: F3 modifica/seleziona, Invio seleziona; in aggiornamento: F3 aggiorna, CTRL-A aggiungi, CTRL-E elimina), crea il menu pop-up griglia e prepara la griglia (z-prepara-tm-grid).

  2. a4: imposta il filtro contestuale, l'ordinamento predefinito per codice (gcn-r-cod ascendente), carica l'eventuale filtro predefinito (z-imppredf-carica-default) e i controlli.

  3. a-leggi-dati / z-grid-det-crea-transito: apre il transito griglia e lo popola scandendo CLCPORTS (st-clcports-notmin + rdnxt-clcports). Vengono caricati solo i portastampi validi (pstm-val = spaces); i portastampi con pstm-val = 'C' (cancellati logicamente) sono esclusi. Per ogni record compone i campi di riga (codice, descrizione, cavita', tipo canale, tipo stampo) e un campo caratt sintetico "cavita'-canale-stampo".

  4. a-grid: ciclo principale sulla griglia. Gestisce:

  5. k-exc-esci -> uscita; k-exc-ricarica -> ricarica dati;
  6. doppio click / Invio in modalita' selezione -> restituisce tm-r-cod (i) in cogq82-portastampo e termina;
  7. SF4 (GRIDADMN colonne), SF5 (esporta Excel);
  8. F3: in modalita' selezione con caller commuta tra selezione/aggiornamento (con richiesta di salvataggio se ci sono modifiche pendenti); in aggiornamento valida tutte le righe e salva (b-aggiorna);
  9. CTRL-A (z-grid-det-nuova-riga): aggiunge una riga vuota di tipo canale C;
  10. CTRL-E: elimina logicamente la riga (azzera i dati mantenendo codice precedente e progressivo);
  11. funzio in range pop-up (151-199): gestione voci del menu contestuale.

  12. Controlli di campo (x-controlla-tm-r-*): codice obbligatorio e univoco (conteggio duplicati sul transito), descrizione obbligatoria, cavita' da 1 a 32, tipo stampo obbligatorio e verificato su COGTABEL (AC).

  13. b-aggiorna / b-aggiorna-record: scandisce il transito e riscrive su CLCPORTS. Riga con codice precedente valorizzato ma codice vuoto -> marca il record esistente come cancellato (pstm-val = 'C'); riga modificata (t-gor-r-riga-mod = 'S') con codice valorizzato -> crea (se assente) e riscrive il record con i dati aggiornati.

  14. fine / z-chiudi: chiude e cancella il transito griglia, distrugge il menu pop-up e termina.

Note tecniche

  • L'eliminazione dei portastampi e' logica, non fisica: viene valorizzato il flag pstm-val = 'C' (cancellato); i record cancellati restano su CLCPORTS ma sono esclusi dal caricamento griglia.
  • Numero cavita' vincolato a 1..32; tipo stampo validato contro COGTABEL tipo AC.
  • Il programma e' un tipico gestore a griglia basato su wgrid.cpy: usa il file di transito T-GRID-DET come buffer editabile, con ordinamento e filtri gestiti dal framework; il salvataggio su tabella avviene solo alla conferma esplicita.
  • Non usa configurazioni RNEWCONF.
  • La modalita' "Selezione" (chiamata da altro programma) e la modalita' "Aggiornamento" (voce di menu) condividono lo stesso sorgente: la label di menu "Gestione portastampi" corrisponde alla modalita' Aggiornamento.