Vai al contenuto

COGM74 - Selezione Merci per Pirelli

Scopo

Aggiornamento massivo del flag Pirelli (mer-fl-sn) sulle merci di anagrafica. Le merci da aggiornare possono essere selezionate per intervallo di codice merce standard oppure per codice merce avanzato (tramite COGS56 che popola TRAN-S56).

Posizioni menu

  • Magazzino > Archivi & Tabelle > Estrazioni Pirelli > Selezione Merci

File e Tabelle

File Copybook Utilizzo
FEURTAB cogfiles.cpy Tabella file di sistema
COGTABEL cogtabel.cpy + redefine euta-c048 Tabella di sistema (lettura configurazioni)
COGMERCI cogmerci.cpy Anagrafica merci, in I/O per aggiornare mer-fl-sn
COGRACMC cogracmc.cpy Raccordo merci (apertura input, lettura per chiave alternativa)
TRAN-S56 tran-s56.cpy File temporaneo popolato da COGS56 con merci selezionate per codice avanzato

Chiavi: cogtabel.k01, cogmerci.k01, mer-chia (cogmerci), rcm-chia2 (cogracmc), trs-s56-chia1 (tran-s56).

Copybook

  • feurtab.fd, cogtabel.fd, cogmerci.fd, cogracmc.fd, tran-s56.fd
  • wgrave.cpy, wstato.cpy, wopenf.cpy, wnscr.cpy
  • utils21.cpy, utils22.cpy, utils56.cpy, utils60.cpy
  • cogazien.cpy, wdisp001.cpy
  • wcont.cpy, wcont1.cpy
  • Fine procedure: cogtabel.k01, cogmerci.k01, stato1.cpy, stato.cpy, winmsg.cpy, grave.cpy, open1.cpy, mmmask.cpy, pdisp001.cpy

CALL

Programma Scopo
COGS21 Accept di un campo da set di valori (flag ' '/'I')
COGS22 Aiuto/ricerca anagrafica merce per gruppo (s22-fun = 'AAPV')
COGS56 Estrazione merci per codice merce avanzato; popola TRAN-S56
COGS60 List-box selezione (tipo selezione C/A)

Logica di elaborazione

Parametri input (tab-maschera)

  • tm-flag: nuovo valore del flag Pirelli (' '=informazioni Pirelli, 'I'=no informazioni Pirelli)
  • tm-sel: 'C'=per codice merce standard, 'A'=per codice merce avanzato (solo se az-mer-ava='S')
  • tm-da-merce / tm-a-merce (gru/sot/cod) + descrizioni: range di partenza/arrivo per selezione standard

tab-opt-tip2 (2 voci): 'C'=per Codice Merce Standard, 'A'=per Codice Merce Avanzato.

Flusso

  1. a000: apertura file, costruzione path trs-s56-name = ext-tmp-dir + ext-os-slash + '#$COGS56.' + wo-oper.
  2. a4: se azienda non ha merce avanzata (az-mer-ava not = 'S') forza tm-sel='C' e segnala via box-msg.
  3. a10: accept tm-flag con COGS21 (set ' I').
  4. a20: accept tm-sel con COGS60 da tab-opt-tip2.
  5. a25 / a30 / a50: se tm-sel='C' accept tm-da-merce e tm-a-merce con COGS22 (AAPV); se tm-sel='A' chiama COGS56 con s56-mag=spaces, s56-call-w78='N'.
  6. b-elabora:
  7. Apre TRAN-S56 in input se tm-sel='A'.
  8. Posiziona su COGMERCI (mer-chia da tm-da-merce) o su TRAN-S56 (chiave 1) e cicla in lettura.
  9. Per tm-sel='C': legge sequenzialmente cogmerci, esce quando mer-chia > tm-a-merce.
  10. Per tm-sel='A': per ogni record di TRAN-S56 legge la merce corrispondente (trs-s56-merce -> mer-chia).
  11. In entrambi i casi: move tm-flag to mer-fl-sn e rwr-cogmerci.
  12. Mostra avanzamento via vw-rt.

Note tecniche

  • Programma legacy non-GUI (formato testo, source-computer rmcobol).
  • Maschera mm-1 9 righe x 80 colonne testuale con cornici grafiche.
  • L'aggiornamento e' batch: nessuna conferma per singolo articolo.
  • COGS56 e' la procedura comune per la selezione "per codice merce avanzato" (riusata da altri programmi).