COGV94 - Manutenzione Matricole Entrate¶
Sorgente: cbl/cogv94.cbl | Program-ID: COGV94 | Tipo: Interattivo con griglia
Menu: Magazzino > Entrate > Inserimento > Manut. Matr.Entrate, Magazzino > Entrate > Varie > Manut. Matricole Entrate, Magazzino > Produzione > Produzione > Matricole > Gestione Entrate
Scopo¶
Gestione interattiva delle matricole (serial number) associate alle righe di bolle di entrata magazzino. Permette di visualizzare lo stato matricole per bolla, inserire matricole mancanti, aggiornare i numeri seriali fornitore, cancellare matricole superflue e stampare le matricole di singole righe o dell'intera bolla.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | Tabella | Input | Tabella generale Eurosystem |
| COGTESBO | Tabella | Input | Testata bolle magazzino (via cogv94.select) |
| COGMOMAG | Tabella | Input | Movimenti magazzino (righe bolla) |
| COGMATRI | Tabella | I-O | Archivio matricole |
| COGMERCI | Tabella | Input | Anagrafica merci |
| COGMERA2 | Tabella | Input | Dati aggiuntivi merci (flag merce critica) |
| COGMERA3 | Tabella | Input | Dati produzione merci (S/N carico) |
| COGGEANA | Tabella | Input | Anagrafica generale |
| COGTABEL | Tabella | Input | Tabelle di sistema (tipo 15: causali magazzino) |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogfiles.cpy |
Struttura generica FEURTAB |
cogv94.select, cogv94.fd, cogv94.wrk |
SELECT, FD, working generati da Screens |
cogv94-01.scr |
Maschera grafica |
cogv94.decla |
Declaratives |
k-personal.cpy |
Costanti personalizzazioni |
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy |
Working storage comuni |
cogazien.cpy |
Dati azienda |
wgrid.cpy, utilgdad.cpy |
Gestione griglie |
utilncnf.cpy |
Interfaccia configurazione RNEWCONF |
utils25.cpy |
Utility numerazione progressiva |
utils52.cpy |
Utility date |
utils68.cpy |
Utility ricerca merce |
utilu07.cpy |
Utility matricole (COGU07) |
utilw36.cpy |
Utility ricerca magazzino |
utilv94s.cpy |
Interfaccia COGV94S (aggiornamento S/N) |
Linkage¶
| Copybook | Descrizione |
|---|---|
wcont.cpy, wcont1.cpy |
Contesto chiamante |
utilp20.cpy |
Interfaccia COGP20 (stampa) |
utilv94.cpy |
Parametri in ingresso (mag, anno, tipo, numero bolla - per modalita' CALLED) |
Struttura del programma¶
Variabili della maschera (tab-maschera)¶
| Variabile | PIC | Descrizione |
|---|---|---|
tm-causale |
9(02) | Causale della bolla |
tm-bolla |
compound | Riferimento bolla: mag X(1) + anno 9(4) + tipo X(1) + numero 9(6) |
tm-ana |
compound | Anagrafica: tipo X(1) + codice 9(5) |
tm-cb-fl-eu |
X(01) | Flag EU dalla causale |
tm-cb-me-segno |
X(01) | Segno movimento dalla causale |
tm-pnt |
9(04) | Numero elementi in griglia |
Elementi griglia (tm-righe, max 200)¶
| Variabile | PIC | Descrizione |
|---|---|---|
tm-merce(i) |
X(09) | Codice merce (gru+sot+cod) |
tm-merce-des(i) |
X(36) | Descrizione merce |
tm-qta-rig(i) |
9(06) | Quantita' da riga bolla |
tm-qta-mtr(i) |
9(06) | Quantita' matricole presenti |
tm-fl-sn(i) |
X(01) | Flag S/N fornitore: "F"=richiesto, spazio=no |
tm-fl-manca(i) |
X(01) | "M"=mancano S/N fornitore |
tm-fl-merce-critica(i) |
X(01) | Flag merce critica |
tm-stato(i) |
X(10) | Stato: "Da Evad."/"Evasi"/spazi |
tm-sn-carico(i) |
X(01) | Flag S/N carico da COGMERA3 |
tm-mgp-rif(i) |
compound | Riferimento magazzino produzione |
Flusso principale¶
- apri - Inizializzazione, apertura file, configurazione, setup pulsanti custom
- a4 - Reset maschera, costruzione griglia vuota
- a-tm-bol-mag - Accept magazzino bolla
- a-tm-bol-ann - Accept anno bolla
- a-tm-bol-tip - Accept tipo bolla
- a-tm-bol-num - Accept numero bolla
- a-richiesta-conferma - Validazione, lettura testata (COGTESBO), verifica causale
Caricamento dati¶
- a-src-mtr - Fase 1: scansione COGMATRI per chiave K3 (bolla entrata). Per ogni merce crea un elemento in tabella, conta le matricole, verifica presenza S/N fornitore
- b-src-rig - Fase 2: scansione COGMOMAG per righe bolla. Per ogni riga, se la merce e' gia' in tabella aggiorna
tm-qta-rig, altrimenti crea un nuovo elemento (se la merce gestisce matricole:mer-fl-sn = 'I' or 'T')
Operazioni sulla griglia¶
- a-grid / a-accept-grid - Gestione interazione griglia principale
- c-del-matr - F4: Cancellazione matricole superflue (da ultima a prima, via COGU07 "cancella-matricola")
- d-ins-matr - F6: Inserimento matricole mancanti (loop fino a
tm-qta-mtr = tm-qta-rig, numerazione via COGS25 cod 19) - e-agg-sn - F7: Aggiornamento S/N fornitore (chiama COGV94S o COGV94P per personalizzazioni VEGE/OPEL)
- f-st-riga - F10: Stampa matricole riga (chiama COGP20)
Modalita' CALLED¶
Se v94-called = 'CALLED', i campi bolla vengono precompilati dai parametri linkage (utilv94.cpy) e il flusso salta direttamente alla conferma. All'uscita con ESC torna al chiamante.
Chiamate esterne¶
| Programma | Modalita' | Scopo |
|---|---|---|
| COGS25 | CALL | Numerazione progressiva matricole (codice 19) |
| COGU07 | CALL | Utility matricole: cancellazione, aggiornamento S/N aggregato |
| COGV94S | CALL | Aggiornamento numeri seriali fornitore (standard) |
| COGV94P | CALL | Aggiornamento numeri seriali fornitore (personalizzazioni VEGE/OPEL) |
| COGP20 | CALL | Stampa matricole (per riga F10 o per bolla F9) |
| COGM07 | CALL | Consultazione locazioni merce (F5) |
| COGS52W | CALL | Gestione date |
| COGS68W | CALL | Ricerca merce con barcode |
| GRIDADMN | CALL | Amministrazione griglie |
Note¶
- La chiave K3 di COGMATRI (
mtr-chia3) e' usata per la scansione per bolla entrata nella fase di caricamento matricole. - Per bolle tipo P (Produzione) e T (Trasferimento), le righe con
mag-entrusc = 'U'vengono escluse. - Il programma gestisce la prima apertura automatica dell'aggiornamento S/N (F7) per bolle di tipo C: alla prima visualizzazione, se la prima riga ha matricole ma mancano i S/N fornitore, viene lanciato automaticamente COGV94S.
- Il controllo "merci critiche" (
controllo-merci-critiche) viene eseguito alla chiusura: se ci sono merci critiche con matricole non complete, viene richiesta conferma. - La configurazione
tm-cfg-mag-no-tracc-merci-critiche(array 50) permette di escludere magazzini dal tracciamento merci critiche.
Storico modifiche¶
TASK-3259 — Cancellazione matricola da griglia (2026-05-26)¶
Aggiunta la possibilita' di cancellare una matricola dalla griglia tramite Ctrl+E. La funzione:
- Verifica che ci siano righe in griglia (
n-mnon zero) e che l'utente sia abilitato alla modifica (w-abi-agg) - Chiede conferma con messaggio "Confermi cancellazione della Matricola?"
- Se confermato, per la matricola selezionata:
- Legge il record COGTRANS (
trs-mat) per recuperare il serial number - Legge e cancella il record COGMATRI (
mtr-mat) - Legge e cancella il record COGSNAGG (
sna-sn+sna-merce) se esistente - Cancella il record COGTRANS
- Inizializza l'elemento in griglia e aggiorna la visualizzazione
La funzione e' implementata nel sottoprogramma COGV94S (cbl/cogv94s.cbl). I pulsanti Ctrl+E vengono attivati/disattivati nei paragrafi x-attiva-ctrl-e-elimina e x-disattiva-ctrl-e-elimina, e il flag w-presenza-cte-elimina e' impostato a 1 in fase di inizializzazione.