Vai al contenuto

COGV47 - Merci x Cliente / C.M.V.

Intestazione

Campo Valore
Programma COGV47
Titolo Visualizzazione vendite per cliente
Posizione menu Magazzino > Uscite > Visualizzazioni > Merci x Cliente/C.M.V.; Magazzino > Giacenze & Sottoscorta > Saldi Contrassegni

Scopo e logica generale

COGV47 e' un programma di visualizzazione per le uscite di magazzino, con possibilita' di analisi del Costo della Merce Venduta. Presenta una maschera con parametri di filtro (merce, cliente, divisa, cliente consegna, tipo visualizzazione, range date, prezzo) e una griglia paginata con le bolle di uscita caricate in un file transito COGTRANS. Dalla griglia e' possibile aprire COGV11 per la gestione della prima nota collegata e WIN064 per il dettaglio bolla.

Puo' essere invocato da altri programmi tramite la linkage utilv11.cpy (campo v11-called e v11-doc).


Flusso principale

  1. Inizializzazione (apri): controllo abilitazione, data sistema, caricamento lingua, lettura azienda, apertura file, recupero divisa conto (COGU10W), configurazione tasti funzione, preparazione COGS68 per campo merce, creazione file transito COGTRANS (in tmp con nome univoco per operatore)
  2. Accept parametri (a4a-tm-clia-tm-divisaa-tm-cliconsa-tm-tipo-visa-tm-mera-tm-da-dataa-tm-a-dataa-tm-prezzo):
  3. Cliente (tm-cli): con aiuto COGS65 (F8)
  4. Divisa (tm-divisa): combo COGS60 (default "C" = conto)
  5. Cliente consegna (tm-clicons): con aiuto COGS65 (F8); se vuoto, display "Tutti"
  6. Tipo visualizzazione (tm-tipo-vis): combo COGS60 (default "T")
  7. Merce (tm-mer): campo composito COGS68 (gruppo/sottogruppo/codice)
  8. Data inizio (tm-da-data): con calendario COGS52W (F8)
  9. Data fine (tm-a-data): con calendario COGS52W (F8)
  10. Prezzo (tm-prezzo): formattato con COGU10W
  11. Conferma (a-fine-dati): validazione globale, dialog conferma; avvio ricerca (a-ricerca)
  12. Ricerca (a-ricerca): scan su file bolle, filtraggio per merce/cliente/periodo, calcolo valori (CMV), caricamento in COGTRANS; totali quantita' e valore
  13. Griglia (a-grid-inia-grid):
  14. Caricamento paginato da COGTRANS con carica-tab
  15. Visualizzazione totali (tm-tot-qta, tm-tot-valo)
  16. PgDown/PgUp: navigazione paginata
  17. SF4: personalizzazione griglia (GRIDADMN)
  18. SF5: esportazione Excel
  19. F3: apertura COGV11 con documento selezionato (v11-called = "COGV11-CALLED", v11-doc = tm-rif-bol(i))
  20. F8: apertura WIN064 per dettaglio bolla (w64-b-tipo/mag/numero/anno)
  21. Chiusura (fine): chiusura file, delete file COGTRANS, z-99-exit-program

File e tabelle acceduti

File logico Record Modalita' Uso
COGVOLBO - Input Testate bolle di uscita magazzino
COGVOLRI - Input Righe bolle di uscita magazzino
COGMERCI - Input Anagrafica merci
COGGEANA ana-rec Input Anagrafica clienti/fornitori
COGTRANS trs-rec I-O File transito paginato (nome univoco in tmp per operatore)
FEURTAB feurtab Input Tabella generica Eurosystem

Struttura COGTRANS (transito)

trs-chia1:
  trs-data        pic 9(08)   Data bolla (AAAAMMGG)
  trs-chia:
    trs-mag       pic x(01)   Magazzino
    trs-ann       pic 9(04)   Anno
    trs-tip       pic x(01)   Tipo bolla
    trs-num       pic 9(06)   Numero bolla
    trs-prog      pic 9(04)   Progressivo riga
trs-merce:        gru(2)+sot(2)+cod(5)  Merce riga
trs-merce-stp:    gru(2)+sot(2)+cod(5)  Merce di stampa
trs-qta           pic 9(07)v999         Quantita'
trs-prezzo        pic 9(12)v999999      Prezzo unitario
trs-valore        pic 9(12)v999999      Valore (CMV o ricavo)
trs-currency      pic x(02)             Divisa
trs-tipo-dato     pic x(01)             Tipo dato

Tab-maschera principali

tm-cli          pic 9(05)        Codice cliente
tm-divisa       pic x(01)        Divisa (default "C")
tm-clicons      pic 9(05)        Cliente consegna
tm-tipo-vis     pic x(01)        Tipo visualizzazione (default "T")
tm-mer          pic x(02+02+05)  Merce filtro
tm-da-data      pic 9(08)        Data inizio
tm-a-data       pic 9(08)        Data fine
tm-prezzo       pic 9(12)v999999 Prezzo di riferimento
tm-tot-qta      pic 9(07)v999    Totale quantita'
tm-tot-val      pic 9(12)v999999 Totale valore

Copybook inclusi

Screen Designer

Copybook Contenuto
cogv47-01.scr Maschera principale (screen section)
cogv47.select SELECT dei file
cogv47.fd FD dei file
cogv47.wrk Working storage maschera
cogv47.decla Declaratives (gestione errori cogtrans)

Strutture dati e utility

Copybook Contenuto
cogfiles.cpy FD feurtab
k-u10.cpy Costanti COGU10
wgrave.cpy / wnscr.cpy / wopenf.cpy / wstato.cpy Working storage comuni
cogazien.cpy Dati azienda
wgrid.cpy / utilgdad.cpy Gestione griglie
utilncnf.cpy Struttura parametri RNEWCONF
utils52.cpy Interfaccia COGS52W (calendario)
utils68.cpy Interfaccia COGS68 (merce composita)
utilu10.cpy / utilu20.cpy Utility importi/divise
utils65.cpy Interfaccia COGS65 (ricerca anagrafica)

Linkage section

Copybook Contenuto
wcont.cpy Linkage standard (user-area)
utilv11.cpy Interfaccia chiamata: v11-called, v11-doc (redefines su user-area)
wcont1.cpy Linkage section chiusura

Programmi chiamati (CALL)

Programma Scopo
COGU10W Recupero divisa conto e formattazione importi
COGS52W Calendario per selezione date
COGS60 Gestione combo/select (divisa, tipo vis)
COGS65 Ricerca anagrafica cliente/cliente consegna (F8)
COGS68 Gestione campo merce composita
WIN064 Visualizzazione dettaglio bolla (F8 in griglia)
COGV11 Inserimento/gestione prima nota magazzino (F3 in griglia)
GRIDADMN Amministrazione griglia (personalizzazione SF4, add record, svuota)
RNEWCONF Lettura configurazione

Logica di business

File transito COGTRANS

Il file transito viene creato con nome univoco per operatore nella directory temporanea: {ext-tmp-dir}/{ext-os-slash}#$COGV47.{wo-oper}. Viene ricreato a ogni nuova ricerca. Alla chiusura del programma il file viene eliminato (delete file cogtrans).

Ricerca (a-ricerca)

Scansione delle bolle di uscita magazzino per il periodo tm-da-data / tm-a-data, filtro su cliente (tm-cli), cliente consegna (tm-clicons), merce (tm-mer), divisa (tm-divisa) e tipo visualizzazione (tm-tipo-vis). Il valore calcolato per ogni riga dipende dal tipo visualizzazione: puo' essere il valore di ricavo o il CMV calcolato tramite prezzo medio o ultimo prezzo di acquisto (trs-prezzo, tm-prezzo).

Ogni riga di bolla che supera i filtri viene scritta nel transito COGTRANS. I totali tm-tot-qta e tm-tot-val vengono accumulati durante la scan.

Apertura COGV11 (F3)

Quando l'operatore preme F3 su una riga della griglia, il programma imposta nel linkage: - v11-called = "COGV11-CALLED" - v11-bolla = tm-rif-bol(i) (mag + ann + tip + num della bolla nella riga selezionata)

Poi invoca COGV11 tramite CALL e al ritorno rimane sulla griglia.

Gestione chiamata esterna (utilv11)

Se il programma viene invocato con v11-called <> spaces e v11-doc <> spaces nel linkage, precarica i filtri dal documento di chiamata (e.g., per navigare direttamente alla bolla collegata).


Variabili di stato principali

Variabile Descrizione
tm-cli Codice cliente filtro
tm-divisa Divisa (default "C" = conto)
tm-tipo-vis Tipo visualizzazione ("T" = tutti)
tm-da-data / tm-a-data Range date
tm-tot-qta / tm-tot-val Totali quantita'/valore della ricerca
n-m Righe nella pagina corrente
fl-read Stato lettura paginata ("E" = fine)
w-nome-trs Percorso file transito COGTRANS