Vai al contenuto

COGF50 -- Schede di Magazzino

Sorgente: cbl/cogf50.cbl | Program-ID: COGF50 | Tipo: Stampa/Visualizzazione

Menu: Magazzino > Stampe > Schede di Magazzino


Scopo

Stampa e visualizzazione delle schede di magazzino per articolo. Per ciascun articolo nel range selezionato, il programma calcola i movimenti mensili suddivisi in 16 categorie (vendite, acquisti, produzione, trasferimenti, conto lavoro, rettifiche, ecc.) e produce una stampa tabellare con totali mensili e progressivi.


Struttura della maschera

Maschera non gestita da Screen Designer; definita come struttura mm-1 inline (10 righe x 70 colonne). La videata di selezione richiede:

Campo Variabile Tipo Note
Data Consolidato (MM/AAAA) tm-aa-ult, tm-mm-ult 9(04), 9(02) Letta da tabella 57 COGTABEL
Data Partenza (GG/MM/AAAA) tm-dataini 9(08) Via COGS52
Data Arrivo (GG/MM/AAAA) tm-datafin 9(08) Via COGS52
Magazzino tm-mag X(01) Validato su COGMAGAZ
Da Cod. Articolo ini-merce / ini-merce-rac X(09) / X(30) Via COGS68
A Cod. Articolo fin-merce / fin-merce-rac X(09) / X(30) Via COGS68
Selezione Stampa tm-tipo-sel X(01) 1=Solo negativi, 2=Tutti (via COGS60)

La visualizzazione dei risultati avviene nella struttura mm-2 (24 righe x 76 colonne), con griglia di 16 categorie e fino a 12+1 colonne (mesi + totale).


Logica di elaborazione

Fase 1: Raccolta parametri

  1. Legge la data di ultimo consolidamento da COGTABEL tipo 57.
  2. Richiede data partenza e arrivo tramite COGS52.
  3. Richiede magazzino, validato su COGMAGAZ.
  4. Richiede range articoli tramite COGS68.
  5. Richiede tipo selezione (negativi / tutti) tramite COGS60.

Fase 2: Elaborazione movimenti

Per ciascun articolo nel range (scansione su COGRACMC per codice avanzato):

  1. Saldo iniziale (w-tot(1, mese_ini)): letto da COGMEMOR per l'anno consolidato, sommando i movimenti con data anteriore alla data partenza.
  2. Scansione movimenti su COGMOMAG (chiave 3: mag + merce + data), dal mese successivo al consolidato alla data fine.
  3. Ogni movimento viene classificato in una delle 16 categorie in base a:
  4. mag-tipob1 (tipo bolla: I, D, C, P, U, T)
  5. mag-entrusc (E/U)
  6. Causale letta da COGTABEL tipo 15 (flag euta-cb-fl-eu, euta-cb-cli-for, euta-cb-con-fat)
  7. Presenza in COGGENER con tipo "BP" o "LP"
  8. Testata bolla COGTESBO (flag tes-fl-cl, tes-descr)
  9. I movimenti vengono accumulati nella tabella wtab-tot (16 x 12).
  10. Se selezione "solo negativi", scarta articoli senza saldi mensili negativi.
  11. Scrive i totali in cogtrans (file di transito temporaneo).

Fase 3: Visualizzazione e stampa

  • Scorre cogtrans articolo per articolo.
  • Per ciascuno: visualizzazione a video e possibilita' di stampa.
  • La stampa e' gestita tramite COGS54 (260 chr per riga).

File utilizzati

File Copybook Accesso Utilizzo
FEURTAB cogfiles.cpy Random Tabella generale
COGTABEL cogtabel.cpy Random Tabelle di sistema (causali, date consolidam.)
COGMERCI cogmerci.cpy Random Anagrafica merci
COGGEANA coggeana.cpy Random Anagrafica generale (non usata direttamente)
COGMAGAZ (COGMAGA2) cogmaga2.cpy Random Magazzini
COGTESBO cogtesbo.cpy Random Testate bolle
COGMOMAG cogmomag.cpy Dynamic Movimenti di magazzino
COGMEMOR cogmemor.cpy Dynamic Saldi consolidati per merce/magazzino
COGRACMC cogracmc.cpy Dynamic Raccordo codici merce (codice avanzato)
COGGENER coggener.cpy Dynamic Generiche (distinte, lavorazioni)
FLSTA flsta.cpy Output File di stampa
cogtrans Inline (trs-rec) I-O File temporaneo totali per merce

Programmi chiamati

Programma Scopo
COGS52 Input date con calendario
COGS54 Gestione stampa (anteprima, stampante)
COGS60 Combo/scelta opzioni
COGS68 Ricerca merce avanzata

Copybook principali

  • COGFILES.CPY -- Layout FEURTAB
  • COGMAGA2.CPY -- Layout magazzino
  • COGTABEL.CPY, COGTESBO.CPY, COGMERCI.CPY, COGGEANA.CPY
  • COGMOMAG.CPY, COGMEMOR.CPY, COGRACMC.CPY, COGGENER.CPY
  • WSTATO.CPY, WGRAVE.CPY, WOPENF.CPY, WNSCR.CPY, COGAZIEN.CPY
  • UTILS22.CPY, UTILS21.CPY, UTILW36.CPY, UTILS54.CPY, UTILS52.CPY, UTILS60.CPY, UTILS68.CPY