Vai al contenuto

COGV30 -- Visualizzazione rimanenze per merce

Sorgente: cbl/cogv30.cbl | Tipo: Programma con interfaccia grafica (griglia interattiva paginata) | Program-ID: COGV30

Menu: Magazzino > Giacenze & Sottoscorta > Vis. x Merce


Scopo

Visualizza le giacenze di magazzino per articolo con dettaglio per magazzino. Per ogni combinazione merce/magazzino mostra giacenza, impegno (vendita, produzione, ordini), ordinato, disponibilita', prezzi e dati logistici. Supporta navigazione paginata, filtri per raggruppamento, fornitore e gruppo avanzato, e diverse azioni di drill-down.

Puo' funzionare sia in modalita' autonoma sia come programma richiamato (CALLED) per la selezione di un articolo.


Interfaccia utente

Modalita' di funzionamento

Modalita' Condizione Comportamento
Autonomo Chiamata diretta da menu Visualizzazione e navigazione libera
RICERCA v30-ope = "RICERCA" Precompila merce, ordina per codice
GIACECOMP v30-ope = "GIACECOMP" Giacenze componenti distinta base
RIC-MERCE v30-ope = "RIC-MERCE" Ricerca merce specifica

Maschera di filtro (tab-maschera)

Campo Tipo Descrizione
tm-merce x(09) Codice merce (gru+sot+cod)
tm-des-mer x(30) Descrizione merce
tm-cma x(30) Codice merce alternativo
tm-ord x(01) Ordinamento
tm-ges-ragr x(01) Gestione raggruppamenti (S/N)
tm-ragr-1/2/3 x(02) Filtri raggruppamento
tm-ragr-1/2/3-des x(30) Descrizione raggruppamento
tm-gru-ava x(20) Gruppo avanzato
tm-ana-cod 9(05) Codice fornitore
tm-ana-raso x(40) Ragione sociale fornitore
tm-dbase x(01) Flag distinta base (S = componenti)

Griglia (grid-record)

Colonna ID Descrizione Condizione visibilita'
grd-merce -- Codice merce Sempre
grd-mag -- Codice magazzino Sempre
grd-mag-des -- Descrizione magazzino Sempre
grd-um -- Unita' di misura Sempre
grd-qta-gia -- Giacenza Sempre
grd-pez-gia 06 Pezzi giacenza az-ges-qta-2 = "S"
grd-qta-imp 07 Impegno Impegno non differenziato
grd-qta-ord 08 Ordinato Impegno non differenziato
grd-imp-vend 09 Impegno vendita Impegno differenziato
grd-imp-prod 10 Impegno produzione Impegno differenziato
grd-imp-ord 11 Impegno ordini Impegno differenziato
grd-qta-gia-col 12 Colli giacenza az-imballi = "SI"
grd-qta-imp-col 13 Colli impegno az-imballi = "SI"
grd-qta-ord-col 14 Colli ordinato az-imballi = "SI"
grd-pua -- Prezzo ultimo acquisto abi-val-acq = "S"
grd-pma -- Prezzo medio acquisto abi-val-acq = "S"
grd-qta-disp 17 Disponibilita' Personalizzazione EX o val
grd-qta-pren 18 Prenotato Non personalizzazione EX
grd-lisuno/due/tre 19-21 Listini 1, 2, 3 Personalizzazione EX
grd-fl-stampi-attivi -- Stampi attivi Sempre
grd-stato -- Stato articolo Sempre
grd-brand-cod/des -- Brand Sempre
grd-pre-imp 26 Prezzo impegno Sempre
grd-data-ini 27 Data inizio validita' Sempre
grd-data-fin 28 Data fine validita' Sempre
grd-confezione -- Confezione Sempre
grd-lotto-min -- Lotto minimo Sempre
grd-fl-altsost -- Alternativi/sostituti Sempre
grd-modula -- Presenza Modula Sempre

Tasti funzione

Tasto Funzione
F1 Visualizzazione distinta base (COGF59, se merce padre) / Configurazione
F2 Impegno differenziato (b1-impegno-diff, se tm-cfg-mod-imp = "S")
F3 Conferma ricerca
F5 Dettaglio impegno vendita (COGO35 con "V")
F6 Dettaglio impegno produzione (COGO35 con "P")
F7 Dettaglio ordinato fornitori (COGO35 con "V"/"F")
F8 Dettaglio movimenti (COGV43)
F9 Situazione produzione (COGQ44)
F10 Giacenze componenti (richiama se' stesso con "GIACECOMP")
F11 Dettaglio per lavorante (COGW53) / per anagrafico
S-F1 Copia merce (COPIAMER, solo personalizzazione EXON)
S-F4 Gestione griglia (GRIDADMN)
S-F5 Esportazione Excel
S-F6 Visualizzazione locazioni (WMSW02 o COGM07)
S-F7 Visualizzazione supporti (COGD83)
S-F9 Serial numbers (WIN068)
Invio Selezione articolo (se CALLED)

Pulsanti custom (push button)

ID Bitmap Descrizione
k-f10-giac-comp magazzino (7) Giacenze Componenti (F10)
k-sf7-vis-supporti magazzino (17) Visualizza Supporti (S-F7)
k-f11-dett-lavorante magazzino (18) Dettaglio x lavorante (F11)
k-f11-dett-anagrafico magazzino (23) Dettaglio x anagrafico (F11)
k-f9-dett-produzione produz (25) Situazione produzione (F9)
k-sf6-vis-locazioni magazzino (4) Visualizza Locazioni (S-F6)
k-sf9-vis-serial magazzino (31) Serial numbers (S-F9)

File e Tabelle

File/Tabella Copybook Uso
COGMERCI cogv30.fd (via select) Anagrafica merci (scansione articoli)
COGMERSA cogv30.fd (via select) Saldi merce per magazzino (giacenza, impegno, ordinato)
COGGEANA cogv30.fd (via select) Anagrafica (fornitori)
COGTABEL cogv30.fd (via select) Tabelle generiche (raggruppamenti tipo 17, marchi)
COGMAGAZ cogv30.fd (via select) Anagrafica magazzini
COGMERLT cogv30.fd (via select) Lotti merce
COGMERLK cogv30.fd (via select) Legami merce (stampi)
COGSTAMP cogv30.fd (via select) Stampi
COGRACMC cogv30.fd (via select) Raccordo codici merce
PRNTOPER cogv30.fd (via select) Operatori (filtro reparto)
T-COMPONENTI (definito inline, EXTERNAL) Transito elenco componenti distinta
COGTRANS2 (definito inline) Transito per abilitazione magazzini (gruppo aziende)
FEURTAB cogfiles.cpy File tabelle Euro

Struttura del programma

Flusso principale

apri -> z-99-init-program -> ctr-abil -> rd-azi -> open-files
     -> Caricamento intestazioni raggruppamenti (tabella tipo 17)
     -> Gestione CALLED (se applicabile)
     -> get-divisa-conto
     -> x99-confi (configurazione)
     -> set-filtro-gruppo-merce
     -> crea-cogtrans2 (abilitazione magazzini gruppo aziende)
     -> a4 (inizializzazione maschera)
     -> Accept parametri (a-tm-ord, a-tm-gru-ava, a-tm-ragr-1/2/3,
                           a-tm-merce, a-tm-ana-cod)
     -> a-fine-dati (validazione)
     -> a-inizio-grid -> carica-tab (caricamento griglia paginata)
     -> a-grid (navigazione griglia)

Paragrafi principali

Paragrafo Funzione
a-tm-ord Accept ordinamento
a-tm-gru-ava Accept gruppo avanzato
a-tm-ragr-1/2/3 Accept raggruppamenti
a-tm-merce Accept codice merce
a-tm-ana-cod Accept fornitore
a-fine-dati Validazione e preparazione ricerca
a-inizio-grid Posizionamento iniziale e inizio caricamento
carica-tab Caricamento griglia paginata via COGU16W
a-grid Navigazione e gestione tasti funzione sulla griglia
b1-impegno-diff Commutazione impegno differenziato
x-prepara-componenti Prepara transito componenti distinta base
a1-cerca-stampi-attivi Cerca stampi attivi per l'articolo
lancia-cogw53 Lancia dettaglio per anagrafico
prepare-call-copiamer Prepara chiamata copia merce (EXON)
crea-cogtrans2 Crea transito abilitazione magazzini per gruppo aziende
set-filtro-gruppo-merce Imposta filtro gruppo merce

Logica di elaborazione

Caricamento giacenze

Il caricamento avviene tramite COGU16W che gestisce la navigazione paginata sulle merci. Per ogni merce trovata:

  1. Legge il saldo da COGMERSA per il magazzino
  2. Calcola giacenza, impegno (differenziato o aggregato), ordinato
  3. Se gestione imballi attiva, calcola i colli
  4. Se richiesto, cerca PUA/PMA
  5. Cerca listini configurati
  6. Controlla presenza stampi attivi (COGMERLK + COGSTAMP)
  7. Controlla presenza alternativi/sostituti
  8. Verifica flag Modula

Filtro fornitore

Se tm-cfg-filtro-forn = "S" e tm-ana-cod <> 0, il programma filtra le merci mostrando solo quelle con il fornitore specificato.

Filtro reparto

Se tm-cfg-filtro-per-reparto = "S", filtra le merci in base al reparto dell'operatore corrente.

Gruppo aziende

Se tm-cfg-gruppo-aziende = "S", il programma crea un transito (COGTRANS2) con l'elenco dei magazzini abilitati tramite COGS0B, e filtra i magazzini in base a questa lista.

Componenti distinta base

Quando richiamato con operazione "GIACECOMP", prepara un transito (T-COMPONENTI) con le merci componenti della distinta base e mostra le giacenze solo per queste merci.

Gestione locazioni

Se tm-cfg-gestione-tablet = "S", il tasto S-F6 richiama WMSW02 per la visualizzazione delle giacenze per locazione. Altrimenti richiama COGM07.


Configurazioni

Parametro (tab-config) Note
tm-cfg-vis-null Visualizza articoli con giacenza zero
tm-cfg-mod-imp Modalita' impegno differenziato (S/N)
tm-cfg-fl-mag Filtro magazzino
tm-cfg-filtro-forn Filtro fornitore attivo
tm-cfg-mag-clavoro Magazzino collaudo
tm-cfg-filtro-per-reparto Filtro per reparto operatore
tm-cfg-mag-fittizio-second Magazzino fittizio secondario
tm-cfg-magazzino-scarico Magazzino scarico
tm-cfg-listino(1..3) / tm-cfg-lis-des(1..3) Listini configurati (codice e descrizione)
tm-cfg-gruppo-aziende Gestione gruppo aziende
tm-cfg-gestione-tablet Gestione locazioni/tablet

Chiamate esterne

Programma Scopo
RNEWCONF Lettura configurazioni
COGS68W Gestione campo merce
COGS65W Selezione anagrafica
COGU10W Utility valute
COGU16W Navigazione merci paginata
COGU20 Esportazione dati
COGU23 Utility
COGF59 Visualizzazione distinta base
COGO35 Dettaglio impegno/ordinato
COGV43 Dettaglio movimenti merce
COGQ44 Situazione produzione
COGW53 Dettaglio per lavorante
COGW29 Selezione raggruppamento
COGD83 Visualizzazione supporti
WIN068 Finestra serial numbers
WIN113 Finestra selezione gruppi avanzati
WMSW02 Visualizzazione locazioni
COGM07 Movimenti magazzino (locazioni legacy)
COGS0B Abilitazione magazzini gruppo aziende
GRIDADMN Gestione griglia interattiva
COGL61 Utility listini
COPIAMER Copia merce (personalizzazione EXON)
COGV30 (se' stesso) Richiamato ricorsivamente per "GIACECOMP"

Copybook utilizzate

Copybook generate da Screens

cogv30.select, cogv30.fd, cogv30.wrk, cogv30.prc, cogv30.decla, cogv30-01.scr

Copybook di libreria

  • cogfiles.cpy -- Definizione file Euro
  • k-personal.cpy -- Costanti personalizzazione
  • k-tipi-cogtabel.cpy -- Costanti tipi tabella
  • wstato.cpy, wopenf.cpy, wgrave.cpy, wnscr.cpy -- Working storage standard
  • cogazien.cpy -- Dati azienda
  • wgrid.cpy, utilgdad.cpy -- Griglia interattiva
  • utilncnf.cpy -- Interfaccia RNEWCONF
  • Numerose copybook util*.cpy per le interfacce con sottoprogrammi

Linkage

  • wcont.cpy -- Struttura linkage standard
  • utild83.cpy -- Interfaccia COGD83
  • utilo35.cpy -- Interfaccia COGO35
  • utils01.cpy -- Interfaccia COGS01
  • utilv30.cpy -- Interfaccia per chiamata esterna (CALLED)
  • utilv43.cpy -- Interfaccia COGV43
  • wcont1.cpy -- Linkage supplementare

Note tecniche

  • Il programma supporta la chiamata ricorsiva: puo' richiamare se' stesso con operazione "GIACECOMP" per visualizzare le giacenze dei componenti di una distinta base.
  • Il file T-COMPONENTI e' dichiarato EXTERNAL per essere condiviso con altri programmi.
  • Il file COGTRANS2 per il gruppo aziende viene creato e distrutto ad ogni esecuzione (crea-cogtrans2 / close + delete file).
  • La navigazione sulla griglia e' paginata tramite COGU16W che gestisce il posizionamento e lo scorrimento sulle merci.
  • La personalizzazione EXON ha una gestione specifica per la copia merce tra archivi di societa' diverse (COPIAMER, attivata con S-F1).
  • Le colonne della griglia vengono abilitate/disabilitate dinamicamente in base alla configurazione aziendale.
  • Il campo grd-modula (aggiunto nel 2026-01) indica la presenza dell'articolo nel magazzino automatizzato Modula.

Documentazione tecnica -- 2026-04-16