Vai al contenuto

COGF16 - Estrazione Dati Valore Merci

Sorgente: cbl/cogf16.cbl | Program-ID: COGF16 | Tipo: Interattivo (raccolta parametri + elaborazione batch)

Menu: Magazzino > Archivi & Tabelle > Varie > Estrazione Dati Valore Merci, Magazzino > Archivi & Tabelle > Varie > Estrazione valore dist.base


Scopo

Estrazione su file a campi fissi dei dati di valorizzazione delle merci. Per ogni merce nell'intervallo specificato, il programma calcola: valore distinta base, mano d'opera scorporata, materiali di consumo scorporati, prezzo di listino 1. Il file prodotto e' utilizzabile per analisi esterne.

NOTA: il sorgente deve essere compilato con flag -Zr.


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB Tabella Input Tabella generale Eurosystem
COGMERCI Tabella Input Anagrafica merci
COGLISNW Tabella Input Listino vendita (nuovo formato)
COGTESLS Tabella Input Testata listino (per divisa)
export File seq. Output File di esportazione a campi fissi

I file acceduti sono quelli dichiarati in cogf16.select tramite Screen Designer, piu' il file export.

Copybook utilizzate

Copybook Descrizione
cogfiles.cpy Struttura generica FEURTAB
cogf16.select SELECT file generati da Screens
cogf16.fd FD file generati da Screens
cogf16.wrk Working storage generata da Screens
cogf16-01.scr Maschera grafica
cogf16.decla Declaratives
cogf16.prc Procedure copy generate da Screens
k-u10.cpy Costanti per conversione divise
wrk-u10.cpy Working per conversione divise
wgrave.cpy Working errori gravi
wnscr.cpy Working screen
wopenf.cpy Working apertura file
wstato.cpy Working stato
cogazien.cpy Dati azienda
utilcogl61.cpy Interfaccia COGL61 (calcolo prezzi acquisto)
utils64.cpy Interfaccia COGS64 (configurazione merce)
utils68.cpy Interfaccia COGS68W (ricerca merce)
utilu10.cpy Interfaccia COGU10W (conversione divise)
tabmperc.cpy Tabella percentuali merci
utilncnf.cpy Interfaccia RNEWCONF (configurazione)

Linkage

Copybook Descrizione
wcont.cpy Contesto chiamante
utils01.cpy Interfaccia COGS01 (ricerca prezzo listino)
utils16a.cpy Interfaccia COGS16A (scorporo distinta base)
wcont1.cpy Contesto esteso

Struttura del programma

Variabili della maschera (tab-maschera)

Variabile PIC Descrizione
tm-da-merce X(09) Codice merce iniziale (gru+sot+cod)
tm-a-merce X(09) Codice merce finale
tm-letti 9(06) Contatore merci lette
tm-scritti 9(06) Contatore merci scritte

Record di esportazione (exp-rec)

Campo PIC Descrizione
exp-merce X(09) Codice merce
exp-des-mer X(36) Descrizione merce
exp-val-db 9(09)V9(04) Valore distinta base
exp-val-md 9(09)V9(04) Valore mano d'opera
exp-val-mc 9(09)V9(04) Valore materiali di consumo
exp-lis 9(09)V9(04) Prezzo listino 1

Configurazione (tab-config)

Variabile Descrizione
tm-cfg-name-export Percorso file di esportazione
tm-cfg-nmc Numero gruppi materiali di consumo
tm-cfg-gru-mc Codici gruppo da considerare materiali di consumo
tm-cfg-nmd Numero gruppi mano d'opera
tm-cfg-gru-md Codici gruppo da considerare mano d'opera
tm-cfg-files Flag apertura file ("O" = apri)
tm-cfg-tipval Tipo valorizzazione ("U" = ultimo costo)

Flusso principale

  1. apri - Inizializzazione, apertura file, lettura divisa di conto
  2. a4 - Lettura configurazione, inizializzazione maschera
  3. a-tm-da-merce / a-tm-a-merce - Accept intervallo merci (COGS68W per ricerca)
  4. a-fine-dati - Validazione, conferma, apertura file export
  5. ela-10 - Elaborazione: scansione COGMERCI nell'intervallo

Elaborazione (ela-10 / ela-10-loop)

Per ogni merce nell'intervallo:

  1. Ricerca prezzo medio d'acquisto (via COGL61)
  2. Ricerca prezzo listino 1 (via COGS01)
  3. Se mer-padre = "P" (distinta base): esplosione ricorsiva via COGS16A, scorporo mano d'opera e materiali di consumo
  4. Se merce semplice: valorizzazione diretta
  5. Conversione divise se necessario (via COGU10W)
  6. Scrittura record nel file export

Chiamate esterne

Programma Modalita' Scopo
COGS01 CALL Ricerca prezzo di listino
COGS16A CALL Esplosione distinta base con scorporo componenti
COGS64 CALL Lettura configurazione merce
COGL61 CALL Calcolo prezzo medio d'acquisto
COGU10W CALL Conversione divise estere in divisa di conto
RNEWCONF CALL Lettura configurazione da RNEWCONF

Note

  • Il file export e' line sequential a campi fissi (200 byte per riga).
  • Lo scorporo mano d'opera e materiali di consumo avviene solo per le merci "padre" (distinte base): il programma esplode ricorsivamente i componenti e classifica i gruppi secondo la configurazione.
  • La personalizzazione "BO" (Bormioli) ha un percorso diverso per l'apertura del file esportato (COGS01 anziche' COGS64).
  • Se il parametro di lancio e' "P", vengono analizzate solo le distinte base (mer-padre = "P").