COGV3C - Analisi per Riordino Articoli
Sorgente: cbl/cogv3c.cbl | Tipo: Programma interattivo a griglia con filtri | Program-ID: COGV3C
Menu:
- Magazzino > Giacenze & Sottoscorta > Riordino
- Ordini > Fornitori > Visualizzazioni > Analisi per Riordino Articoli
Scopo
COGV3C e' un programma interattivo di analisi per il riordino degli articoli. Presenta una maschera con filtri (raggruppamenti merci, codice merce, range date, magazzino) e una griglia di risultati che mostra i saldi di magazzino degli articoli selezionati, con informazioni aggiuntive utili alla pianificazione degli ordini di acquisto: quantita' giacente, impegnata, ordinata, prenotata, dati logistici (strati pallet, pallet, tempi di consegna, shelf life).
Il programma legge i saldi magazzino (COGSLMAG) e li incrocia con l'anagrafica merci (COGMERCI), i dati di appoggio merci (COGMERAP per i raggruppamenti) e i dati aggiuntivi merci (COGMERA4 per i parametri logistici). La griglia e' ordinabile per magazzino e codice merce, supporta il menu contestuale (right-click), l'export Excel (Shift-F5), la gestione colonne tramite GRIDADMN (Shift-F4), e il filtro/ordinamento predefinito tramite imppredf.
Filtri di selezione
| Campo |
Variabile |
Tipo |
Descrizione |
| Raggruppamento 1 |
tm-ragr-1 |
x(2) |
Codice raggruppamento merce livello 1 (COGTABEL tipo 17, arg "1"). F8 = aiuto (COGW29) |
| Raggruppamento 2 |
tm-ragr-2 |
x(2) |
Codice raggruppamento merce livello 2 (COGTABEL tipo 17, arg "2"). F8 = aiuto (COGW29) |
| Raggruppamento 3 |
tm-ragr-3 |
x(2) |
Codice raggruppamento merce livello 3 (COGTABEL tipo 17, arg "3"). F8 = aiuto (COGW29) |
| Merce |
tm-merce (gru/sot/cod/cma/cmc/cmf/bc/des) |
composito |
Codice merce tramite ricerca strutturata (COGS68W) |
| Dalla Data |
tm-datada |
9(8) |
Data inizio analisi (default: 1 gennaio dell'anno corrente) |
| A Data |
tm-dataa |
9(8) |
Data fine analisi (default: data di sistema) |
| Magazzino |
tm-mag |
x(1) |
Codice magazzino (validato su COGMAGAZ). F8 = aiuto (COGW36) |
Colonne griglia (dati per riga)
| Campo |
Variabile |
Descrizione |
| Codice merce |
t-gor-r-mer-cm |
Codice articolo (gruppo+sottogruppo+codice) |
| Magazzino |
t-gor-r-mag |
Codice magazzino |
| Desc. magazzino |
t-gor-r-mag-d |
Descrizione magazzino |
| U.M. |
t-gor-r-um |
Unita' di misura |
| Qta' giacente |
t-gor-r-qta-gia |
Giacenza attuale da saldo magazzino |
| Qta' impegnata |
t-gor-r-qta-imp |
Quantita' impegnata (prenotata da ordini cliente) |
| Qta' ordinata |
t-gor-r-qta-ord |
Quantita' ordinata (in arrivo da fornitori) |
| Qta' prenotata |
t-gor-r-qta-pren |
Quantita' prenotata |
| Strati pallet |
t-gor-r-strati-pal |
Strati per pallet (da COGMERA4) |
| Pallet |
t-gor-r-pallet |
Quantita' per pallet (da COGMERA4) |
| Tempi consegna |
t-gor-r-tempi-cons |
Tempi di consegna (da COGMERA4) |
| Shelf life |
t-gor-r-self-life |
Shelf life del prodotto (da COGMERA4) |
| Minimo consegna |
t-gor-r-min-cons |
Quantita' minima di consegna (da COGMERA4.ma4-min-cons) |
| Tempi consegna (alfanum.) |
t-gor-r-time-cons |
Tempi di consegna alfanumerici (da COGMERA4.ma4-time-cons) |
| Forn. preferenziale |
t-gor-r-forn-prf |
Codice fornitore preferenziale (da COGMERFO + COGCNDCF) |
| Desc. forn. pref. |
t-gor-r-forn-prf-d |
Descrizione fornitore preferenziale (da COGGEANA) |
| Tipo ribasso |
t-gor-r-ana-rb |
Codice tipo ribasso del fornitore (da COGGEANA.ana-rb) |
| Desc. tipo ribasso |
t-gor-r-ana-rb-d |
Descrizione tipo ribasso (da COGTABEL tipo 22) |
| Tipo pagamento |
t-gor-r-ana-pag |
Codice tipo pagamento del fornitore (da COGGEANA.ana-pag1) |
| Desc. tipo pagamento |
t-gor-r-ana-pag-d |
Descrizione tipo pagamento (da COGTABEL tipo 14) |
Logica di Elaborazione
Flusso principale
- Inizializzazione: controllo abilitazione, apertura file, lettura divisa contabile (
COGU10W), creazione griglia e file transito, lettura etichette raggruppamenti da COGTABEL (tipo 17, arg 1/2/3).
- Accettazione filtri: sequenza di accept per Raggruppamento 1, 2, 3, Merce, Data Da, Data A, Magazzino. Ogni campo e' validato in tempo reale. F3 lancia la conferma.
- Conferma e ricerca: tutti i filtri vengono rivalidati (
x-imposta-conferma); se OK, si attiva il caricamento dati.
- Caricamento dati (
carica-dati):
- Se il magazzino e' specificato, posiziona su
COGSLMAG con chiave 2 (magazzino + merce); altrimenti usa la chiave 1 (merce).
- Cicla su tutti i record di saldo; per ciascuno:
- Legge l'anagrafica merce (
COGMERCI) -- se non trovata, salta.
- Legge i dati di appoggio merce (
COGMERAP) per i raggruppamenti.
- Applica i filtri per raggruppamento 1, 2, 3 confrontando
map-ragr-1/2/3 con i filtri impostati.
- Compone la riga della griglia con: codice merce, magazzino (letto da
COGMAGAZ), U.M., quantita' (giacente/impegnata/ordinata/prenotata), parametri logistici da COGMERA4 (strati pallet, pallet, tempi consegna, shelf life).
- Gestione griglia: l'utente naviga la griglia read-only. Funzioni disponibili:
- Shift-F4: gestione colonne (
GRIDADMN)
- Shift-F5: export Excel
- Right-click: menu contestuale (popup)
- ESC: torna ai filtri
- Chiusura: chiude i file, elimina il file transito della griglia, distrugge il menu popup.
Ordinamento predefinito
La griglia e' ordinata per magazzino (ascendente), poi codice merce (ascendente). L'utente puo' cambiare l'ordinamento tramite le funzionalita' della griglia.
File e Tabelle
| File/Tabella |
Record |
Uso |
| FEURTAB |
fil-rec |
Tabella nomi file del gestionale |
| COGSLMAG |
msal-rec |
Saldi di magazzino -- tabella principale di lettura (chiave 1: merce+mag, chiave 2: mag+merce) |
| COGMERCI |
mer-rec |
Anagrafica articoli/merci |
| COGMERAP |
map-rec |
Dati di appoggio merci (raggruppamenti 1/2/3) |
| COGMERA4 |
ma4-rec |
Dati aggiuntivi merci (strati pallet, pallet, tempi consegna, shelf life, minimo consegna, tempi consegna alfanum.) |
| COGMERFO |
mfr-rec |
Raccordo merce-fornitore (per ricerca fornitore preferenziale) |
| COGCNDCF |
cnd-rec |
Condizioni commerciali fornitore (tipo "FP" = fornitore preferenziale) |
| COGGEANA |
ana-rec |
Anagrafica generale (per nome fornitore, tipo ribasso, tipo pagamento) |
| COGMAGAZ |
magz-rec |
Anagrafica magazzini |
| COGTABEL |
euta-rec |
Tabelle di sistema (tipo 17 = raggruppamenti merce, tipo 22 = tipi ribasso, tipo 14 = tipi pagamento) |
| T-GRID-DET |
t-gor-r-rec |
File transito temporaneo per la griglia |
Programmi chiamati
| Programma |
Scopo |
| COGU10W |
Recupera la divisa contabile per data (GetDivisaConto) |
| GRIDADMN |
Gestione layout colonne griglia (preparazione e personalizzazione) |
| COGW29 |
Ricerca raggruppamenti merce (popup F8 su campi ragr. 1/2/3) -- via sendw29.cpy |
| COGW36 |
Ricerca magazzini (popup F8 su campo magazzino) -- via sendw36.cpy |
| COGS68W |
Ricerca strutturata merce (accept articolo) -- via utils68.cpy |
| W$MENU |
Menu contestuale AcuCOBOL (right-click su griglia) |
Copybook principali
Screen Designer (generati)
| Copybook |
Contenuto |
cogv3c-01.scr |
Maschera principale (screen section) |
cogv3c.select |
SELECT dei file acceduti |
cogv3c.fd |
FD dei file acceduti |
cogv3c.wrk |
Working storage generata |
cogv3c.tm |
Template campi modificabili della maschera |
cogv3c.decla |
Declaratives (gestione errori I/O) |
cogv3c.prc |
Procedure division generate (I/O, controlli, utility) |
cogv3c.imppredf-wrk |
Working per gestione filtro predefinito |
cogv3c.imppredf |
Procedure per gestione filtro predefinito |
Gestionale
| Copybook |
Contenuto |
cogfiles.cpy |
Record tabella nomi file |
cogslmag.cpy |
Record saldo magazzino |
cogslmag.k02 |
Routine I/O chiave secondaria COGSLMAG (mag+merce) |
cogmerci.cpy |
Record anagrafica merci |
cogmerap.cpy |
Record appoggio merci |
cogmera4.cpy |
Record dati aggiuntivi merci |
cogazien.cpy |
Record dati azienda |
k-u10.cpy |
Costanti per utility COGU10W |
Utility / Framework
| Copybook |
Contenuto |
wgrid.cpy |
Working per gestione griglie |
utilgdad.cpy |
Working per GRIDADMN |
utilgcol.cpy |
Utility gestione colonne griglia |
utils52.cpy |
Working per utility COGS52W (date) |
utils68.cpy |
Working per utility COGS68W (ricerca merce) |
utilu10.cpy |
Working per utility COGU10W (divisa) |
utilu20.cpy |
Working per utility COGU20 |
utilw29.cpy |
Working per utility COGW29 (raggruppamenti) |
utilw36.cpy |
Working per utility COGW36 (magazzini) |
utilncnf.cpy |
Working per utility configurazione |
utilimppredf.cpy |
Working per filtri predefiniti |
utilgesdebug.cpy |
Working per gestione debug |
k-personal.cpy |
Costanti personalizzazione |
wcont.cpy / wcont1.cpy |
Linkage section (area comunicazione) |
grave.cpy |
Routine gestione errori gravi |
mmmask.cpy |
Routine gestione maschere |
opengen.cpy |
Routine apertura file generica |
stato.cpy / stato1.cpy |
Routine gestione stati file |
winmsg.cpy |
Routine messaggi a finestra |
sendw29.cpy |
Routine chiamata COGW29 |
sendw36.cpy |
Routine chiamata COGW36 |
gesdebug.cpy |
Routine gestione debug |
Note tecniche
- La griglia e' read-only: il paragrafo
z-99-begin-entry-grid-det respinge tutti i tentativi di modifica con event-action-fail-terminate.
- Il massimo numero di elementi caricabili e' definito dalla costante
k-max-ele-tab = 900.
- Il filtro per merce avviene prima per posizionamento sulla chiave di
COGSLMAG, poi per raggruppamento incrociando con COGMERAP.
- Le colonne per totale uscite, media uscite, totale entrate, media entrate e ultimo ordine sono predisposte nella struttura
t-gor-r ma risultano commentate nel sorgente (non ancora implementate).
- Il programma supporta il salvataggio/caricamento del filtro predefinito tramite il framework
imppredf.
Storico Modifiche
| Build |
Descrizione |
| 2026/0074 |
Programma nuovo |
| 2026-03-31 |
Aggiunte colonne fornitore preferenziale (con ribasso e pagamento), minimo consegna, tempi consegna alfanumerici. Nuovo paragrafo cerca-forn-prf che cerca il primo fornitore con condizione "FP" su COGCNDCF e ne recupera i dati anagrafici (ribasso da COGTABEL tipo 22, pagamento da tipo 14). Aggiunte costanti k-euta-tipo-22 e k-euta-tipo-14 |
Documentazione tecnica generata automaticamente -- 2026-03-26