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 Screenscogazien.cpy-- Dati azienda (personalizzazione, case serial number)wgrid.cpy,utilgdad.cpy-- Supporto grigliautils52.cpy-- Date (COGS52W)utils50.cpy-- Utilityutils68.cpy-- Ricerca merce (COGS68)utils65.cpy-- Ricerca cliente/fornitore (COGS65W)utils20.cpy-- Utilityutildlg.cpy-- Dialogo utenteutilw36.cpy,sendw36.cpy-- Ricerca magazzinoutilu07.cpy-- Utility serial number (COGU07)utilu10.cpy-- Utility valuteutilu16.cpy-- Utility ordinamentok-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:
- Legge i dati dell'uscita da COGMTUSC (se presente)
- Per le uscite di tipo "B" (bolla): legge la testata bolla da COGTESBO per avere data e cliente
- Per le uscite di tipo "L" (lavorazione): legge l'ordine collegato da COGTESOR
- Per le uscite anomale: segna il tipo "A"
- Applica i filtri: movimenti (E/U/T), cliente, fornitore, merce da/a, matricola da/a, date entrata, magazzino
- 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 COGTRANSsn-read/sp-read: lettura avanti/indietrord-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"):
- Cerca le matricole selezionate (tm-sel = "S") nella griglia
- 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
- Per le matricole in uscita (tm-eu = "U") con scarico anomalo gia' presente: cancella il record COGMTUSC e il flag
- 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-sne 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