Vai al contenuto

COGM09 - Elenco Serial Numbers per criterio

Sorgente: cbl/cogm09.cbl | Tipo: Programma interattivo con griglia paginata | Program-ID: COGM09

Menu:

  • Magazzino > Visualizzazioni > Serial Numbers > Elenco s/n per criterio

Scopo

Visualizzazione e ricerca delle matricole (serial number) in magazzino, con filtri multipli: tipo ricerca (Matricola/Serial/Merce), movimenti (Tutti/Entrate/Uscite), serial number, ordinamento, cliente, fornitore, intervallo merce, intervallo matricola, date entrata, magazzino. Supporta la selezione di matricole per lo scarico anomalo (S-F6) per le personalizzazioni abilitate (ES, FF, VE).

Puo' funzionare sia standalone (da menu) sia richiamato come subroutine (linkage util-m97).


Interfaccia utente

Maschera di filtro (tab-maschera)

Campo Tipo Descrizione
tm-ric X(01) Tipo ricerca: M=Matricola, S=Serial, altro
tm-ok-sel X(01) Flag abilitazione selezione (S/N, dipende da az-personal)
tm-pre-sel X(01) Preselezione per scarico anomalo (S/N)
tm-mov X(01) Tipo movimenti: T=Tutti, E=Entrate, U=Uscite
tm-da-mat / tm-a-mat 9(12) Intervallo matricole (anno 4 + numero 8)
tm-ana (tm-ana-cli / tm-ana-for) 9(05) Codice cliente o fornitore
tm-acc-sn X(30) Serial number (o parte iniziale)
tm-merce-da / tm-merce-a X(09) Intervallo merce (gruppo 2 + sottogruppo 2 + codice 5)
tm-ord-mer X(01) Ordinamento: per Matricola o per Merce
tm-ent-data-da / tm-ent-data-a 9(08) Intervallo date entrata
tm-ent-mag2 X(01) Codice magazzino di entrata

Ordine di accept dei campi

Ricerca > Preselezione > Movimenti > Serial number > Ordinamento > Cliente > Fornitore > Merce da > Merce a > Da matricola anno > Da matricola numero > A matricola anno > A matricola numero > Data entrata da > Data entrata a > Magazzino entrata > Conferma

Griglia (grid-record)

Colonna Descrizione
Matricola (anno/numero) Anno e numero matricola
Serial number Codice seriale
Merce Codice merce
Sel./Canc. Flag selezione per scarico anomalo
Doc. carico Mag/anno/tipo/numero del documento di entrata
Tipo fornitore Tipo anagrafico
Cod. fornitore Codice
Des. fornitore Ragione sociale
Riferimento Riferimento documento
Data riferimento Data
Tipo scarico Tipo di scarico
Doc. scarico Documento di uscita
Tipo cliente Tipo anagrafico
Cod. cliente Codice
Des. cliente Ragione sociale
Tipo ubicazione Tipo (M=Magazzino, F=Fornitore)
Cod. ubicazione Codice
Locazione Locazione
Des. ubicazione Descrizione

Tasti funzione

Tasto Funzione
F3 Conferma filtri / Aggiorna
F8 Informazioni tecniche matricola (chiama COGM97 per personalizzazione EC) / Aiuto su serial number (chiama COGU07) / Aiuto magazzino (W36)
F9 Ricerca avanzata
S-F4 Gestione griglia (GRIDADMN)
S-F5 Esportazione Excel
S-F6 Elaborazione scarico anomalo (check-sel)
Invio Selezione/deselezione matricola (se OkSel attivo)
PgUp/PgDn Paginazione

File e tabelle

File/Tabella Copybook Uso
FEURTAB cogfiles.cpy Tabella parametri generali
COGMATRI cogm09.fd Matricole (tabella principale)
COGMTUSC cogm09.fd Uscite matricole
COGGEANA cogm09.fd Anagrafica clienti/fornitori
COGMERCI cogm09.fd Anagrafica merci
COGMAGAZ cogm09.fd Anagrafica magazzini
COGMOMAG cogm09.fd Movimenti di magazzino
COGTESBO cogm09.fd Testata bolle
COGTESOR cogm09.fd Testata ordini
COGTABEL cogm09.fd Tabelle generiche
COGMERLT cogm09.fd Lotti merce
COGTRANS temporaneo File indicizzato temporaneo per elaborazione

Chiavi di accesso utilizzate

Le chiavi di accesso a COGMATRI dipendono dal tipo di ricerca e ordinamento: chiave per merce+matricola (k02), chiave per serial number (k04).

Programmi chiamati

Programma Scopo
GRIDADMN Gestione griglia
COGU07 Ricerca serial number con autocompletamento (F8 su serial number)
COGM97 Visualizzazione informazioni tecniche matricola (personalizzazione EC, F8 su griglia)
COGS52W Gestione date con calendario
COGS65W Ricerca cliente/fornitore
COGS68 Ricerca merce
COGS50 Utility di input
COGS20 Utility
COGU10 Utility valute/divisioni
COGU16 Utility ordinamento e ricerca
W36 (sendw36) Ricerca magazzino
COGSDLG Dialogo utente

Copybook principali

  • cogm09.select, cogm09.fd, cogm09.wrk, cogm09.prc, cogm09.decla, cogm09-01.scr -- Definizioni generate da Screens
  • cogazien.cpy -- Dati azienda (personalizzazione, case serial number)
  • wgrid.cpy, utilgdad.cpy -- Supporto griglia
  • utils52.cpy -- Date (COGS52W)
  • utils50.cpy -- Utility
  • utils68.cpy -- Ricerca merce (COGS68)
  • utils65.cpy -- Ricerca cliente/fornitore (COGS65W)
  • utils20.cpy -- Utility
  • utildlg.cpy -- Dialogo utente
  • utilw36.cpy, sendw36.cpy -- Ricerca magazzino
  • utilu07.cpy -- Utility serial number (COGU07)
  • utilu10.cpy -- Utility valute
  • utilu16.cpy -- Utility ordinamento
  • k-u10.cpy -- Costanti utility valute

Logica di elaborazione

Caricamento dati (b-leggi)

La procedura di caricamento legge le matricole dalla tabella COGMATRI utilizzando la chiave appropriata in base al tipo di ricerca e ordinamento. Per ogni matricola:

  1. Legge i dati dell'uscita da COGMTUSC (se presente)
  2. Per le uscite di tipo "B" (bolla): legge la testata bolla da COGTESBO per avere data e cliente
  3. Per le uscite di tipo "L" (lavorazione): legge l'ordine collegato da COGTESOR
  4. Per le uscite anomale: segna il tipo "A"
  5. Applica i filtri: movimenti (E/U/T), cliente, fornitore, merce da/a, matricola da/a, date entrata, magazzino
  6. Scrive i risultati nel file temporaneo COGTRANS (ordinato per serial number + matricola)

Caricamento griglia (carica-tab)

Legge il file temporaneo COGTRANS e popola la tabella interna tm-tab tramite il pattern di paginazione standard (utilpggr.cpy).

Paginazione

La griglia e' paginata (max 100 righe visibili, pattern z-99-accept-paged-grid). I dati di paginamento si basano su COGTRANS:

  • x-spaginamento-start / rn-start-not-less / rn-start / rp-start-less: posizionamento su COGTRANS
  • sn-read / sp-read: lettura avanti/indietro
  • rd-controlli-fill: tutti i record vengono inclusi (nessun filtro aggiuntivo dopo il caricamento)

Scarico anomalo (check-sel, S-F6)

Per le personalizzazioni abilitate (az-personal = "ES", "FF", "VE"):

  1. Cerca le matricole selezionate (tm-sel = "S") nella griglia
  2. Per le matricole in entrata (tm-eu = "E") non gia' scaricate: scrive un record in COGMTUSC con bolla fittizia (k-scarico-anomalo = "Z9999Z999999") e cliente = az-cli-int
  3. Per le matricole in uscita (tm-eu = "U") con scarico anomalo gia' presente: cancella il record COGMTUSC e il flag
  4. Rilancia il caricamento dati per aggiornare la griglia

Personalizzazione case serial number

Il campo serial number rispetta la configurazione ext-case-sn dall'azienda: "I" = invariato, "U" = maiuscolo, altro = minuscolo.


Note

  • Il programma usa un pulsante custom F8 ("Informazioni tecniche") con bitmap dal file "magazzino" (numero 3) e un pulsante S-F6 ("Elaborazione anomali") con bitmap numero 4.
  • La ricerca F8 sul serial number usa COGU07 con operazione cerca-sn e opzione "C" (cerca).
  • Il file temporaneo COGTRANS e' specifico per operatore (nome include wo-oper) e viene creato/distrutto ad ogni sessione.

Documentazione tecnica -- 2026-04-06