Vai al contenuto

COGMAP - Consultazione Campionature

Scopo

Visualizzazione delle campionature di stampaggio (file COGMVCMP) in una griglia filtrata per intervallo di date e codice articolo. Il programma clona la struttura di SKVIS1 (griglia con file di transito, paginazione, esportazione, filtri salvabili). I dati sono presentati in sola lettura con possibilita' di salvare configurazioni di filtro predefinite.

Magazzino > Produzione > Stampaggio > Visualizzazioni > Campionature

File e tabelle

File Tipo Descrizione
FEURTAB Parametri Parametri di ambiente
COGTABEL Indicizzato Tabella generica (utility)
COGMERCI Indicizzato Input Anagrafica articoli (filtro merce)
COGGEANA Indicizzato Input Anagrafica generale
COGLAVOR Indicizzato Input Lotti / lavorazioni (riferimento commessa)
COGMERLT Indicizzato Input Legami merce/lotto (recupero lotto da magazzino+progressivo)
COGMVCMP Indicizzato Input Movimenti campionature (file principale, scansione per chiave 3 ordinata per data)
PRNTOPER Indicizzato Stampa per operatore
T-GRID-DET Indicizzato I/O (transito) File di lavoro per la griglia (chiave: ordinamento + progressivo)
MASKGTGT, MASKGTGD Indicizzato Maschere di filtro/impostazioni salvate (filtri predefiniti)

Chiave secondaria utilizzata: cogmvcmp.k03 (per scorrere ordinato per data).

Copybook

File e select

  • feurtab.fd, cogmap.select, cogmap.fd, cogfiles.cpy

Working-storage

  • cogmap.wrk, cogmap.tm (generate da Screens)
  • cogmap.imppredf-wrk — strutture per filtri predefiniti
  • costanti-stampaggio.cpy
  • Standard: wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy
  • Griglia: wgrid.cpy, utilgdad.cpy
  • Utility: utils52.cpy, utils68.cpy, utils93.cpy, utilu10.cpy, utilu20.cpy, utilimppredf.cpy

Screen

  • cogmap-01.scr

Linkage

  • wcont.cpy, wcont1.cpy

Procedure

  • cogmap.decla, cogmap.prc, cogmap.imppredf
  • grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy
  • Chiave secondaria: cogmvcmp.k03

CALL

Programma Descrizione
GRIDADMN Preparazione/aggiornamento della griglia di dettaglio
W$MENU Costruzione e attivazione del menu pop-up (tasto destro)
COGS52 Accept date (Data Partenza, Data Arrivo)
COGS68 Selezione/aiuto merce
COGS93, COGU10 Subroutine accessorie di interrogazione/formatting (caricate da z-carica-*)

Logica di elaborazione

  1. Inizializzazione (apri):
  2. Apertura file, lettura azienda, costruzione menu pop-up della griglia (build-main-popup-grid-det).
  3. Caricamento bitmap personalizzata "ricerca" e creazione dei pulsanti custom Salva impostazione (Ctrl+S) e Cerca impostazione (Ctrl+F).
  4. Preparazione griglia con GRIDADMN "Prepara".
  5. Caricamento ID colonne (x-trova-col-num-grid-det).
  6. Accept filtri (a4 -> a-tm-da-data, a-tm-a-data, a-tm-mer):
  7. Imposta default 20000101 / 20991231 per le date.
  8. Imposta ordinamento predefinito ASC su gcn-r-data (z-grid-det-componi-ord).
  9. Carica il filtro di default per l'utente con z-imppredf-carica-default.
  10. Per ciascun campo: gestione tasti F2 (back), F3 (vai a a-richiesta-conferma), F8 (calendario), ESC.
  11. Caricamento dati (a-leggi-dati, a-grid-ini):
  12. Apre il file di transito t-grid-det (z-grid-det-apri-transito), lo crea/azzera (z-grid-det-crea-transito), e lo riordina (z-grid-det-riordina-transito).
  13. Scansione di COGMVCMP con start notmin-chia3 su mvcmp-data = tm-da-data. Per ciascun record:
    • Verifica mvcmp-data <= tm-a-data (con tm-a-data > 0), esce dal loop quando supera.
    • Salta i record cancellati (mvcmp-fl-canc = "C").
    • Filtra per merce (tm-mer) se valorizzata.
    • Riempie t-gor-r-rec con dati di movimento, dati merce (via z-riempi-t-gor-r-mer), lotto (lettura COGMERLT) e commessa.
    • Inserisce nel file di transito (z-grid-det-inserisci-t-rec).
  14. Visualizzazione griglia (a-grid):
  15. z-99-accept-paged-grid su e-grid-det.
  16. Shift+F4: amministrazione griglia.
  17. Shift+F5: export Excel (z-esporta-grid-det).
  18. Menu pop-up dalla right-click (msg-grid-rbutton-down) tramite W$MENU.
  19. Le exception dal pop-up sono in k-pmg-primo..k-pmg-ultimo (151..199): vengono gestite da x-attiva-popup-grid-det + x-gestione-tf-grid-var.
  20. ESC torna ai filtri (a4), Ctrl+S salva il filtro corrente (z-imppredf-salva), Ctrl+F seleziona un filtro salvato (z-imppredf-seleziona).
  21. Salvataggio/Caricamento filtri:
  22. I filtri sono memorizzati in MASKGTGT/MASKGTGD tramite il modulo cogmap.imppredf (utilimppredf).
  23. Il pulsante "Salva" si attiva quando il contenuto attuale differisce dall'ultimo filtro caricato (tm-interfaccia <> tm-interfaccia-copia).
  24. Uscita (fine, z-chiudi):
  25. Chiude i file e cancella il file di transito (delete t-grid-det).
  26. Distrugge il menu pop-up (x-destroy-menu-grid-det).

Struttura record di transito (t-gor-r-rec)

t-gor-r-chia2:
  t-gor-r-ord      X(238)   stringa di ordinamento
  t-gor-r-chia1:
    t-gor-r-prog   9(12)    progressivo univoco
campi dato:
  t-gor-r-data, t-gor-r-provenienza, t-gor-r-camp-ric, t-gor-r-camp-ese
  t-gor-r-mer-cm/dm/cma/cmf/cmc  identificativi merce
  t-gor-r-l-mag, t-gor-r-l-prog, t-gor-r-lotto
  t-gor-r-cla-chia1-ed, t-gor-r-cla-anno, t-gor-r-cla-numero (commessa)
  t-gor-r-qta-pkg, t-gor-r-qta-cmp, t-gor-r-peso-cmp
  t-gor-r-postazione
+ campi t-gtc-r-* di colore per ciascuna colonna (trigger di colorazione)

Note tecniche

  • Il programma e' di tipo "consultazione": gli entry-point di modifica griglia (x-controlla-tm-r-mer, z-event-grid-det-after) esistono ma sono in buona parte commentati e configurati come read-only (event-action-fail-terminate nel z-99-begin-entry-grid-det di default).
  • Il programma e' clone di SKVIS1; il copybook utilimppredf.cpy + modulo cogmap.imppredf gestiscono la persistenza dei filtri.
  • L'ordinamento e' modificabile a runtime dalla griglia; viene ricostruito tramite z-grid-det-componi-ord + z-grid-det-riordina-transito (nuova ricostruzione del file di transito).
  • Il file di transito viene cancellato all'uscita; nome generato in temp directory dell'utente.
  • La scansione su COGMVCMP usa la chiave 3 (per data): se il file e' molto grande, le performance dipendono dall'intervallo di date impostato.