COGP71B - Stampa Elenco Buoni di Prelievo per Cliente
Scopo
Stampa un elenco dei buoni di prelievo raggruppati per cliente, con dettaglio righe, totali per buono, per cliente e totale generale. Supporta filtri per cliente, prodotto, periodo e stato del documento.
- Magazzino > Entrate > Buoni di Prelievo > Stampa Elenco x Cliente
- Magazzino > Uscite > Buoni di Prelievo > Stampa Elenco x Cliente
File e Tabelle
| File |
Copybook |
Utilizzo |
| FEURTAB |
cogfiles.cpy |
Tabella file di sistema |
| COGTESBP |
cogp71b.fd |
Testata buoni di prelievo |
| COGRIGBP |
cogp71b.fd |
Righe buoni di prelievo |
| COGMERCI |
cogp71b.fd |
Anagrafica merci (per descrizione) |
| COGGEANA |
cogp71b.fd |
Anagrafica generale (per nome cliente) |
| FLSTA |
flsta.cpy |
File stampante |
Copybook
cogfiles.cpy, cogp71b.select, cogp71b.fd, cogp71b.wrk, cogp71b-01.scr
flsta.cpy, k-u10.cpy
wstato.cpy, wopenf.cpy, wgrave.cpy, wnscr.cpy
utils52.cpy, utils54.cpy, utils65.cpy, utils68.cpy, utilu10.cpy
cogazien.cpy, wcont.cpy, wcont1.cpy
stato1.cpy, stato.cpy, winmsg.cpy, grave.cpy, mmmask.cpy, opengen.cpy
cogp71b.prc, GetDCont.cpy, printer.cpy
cogtesbp.k03, cogrigbp.k02, cogrigbp.k03
CALL
| Programma |
Scopo |
| COGS52 |
Input data con calendario |
| COGS54 |
Gestione parametri stampante e anteprima |
| COGS65W |
Ricerca anagrafica (cliente) con zoom |
| COGS68W |
Ricerca prodotto con zoom |
| COGU10W |
Conversione divisa, arrotondamento, formattazione importi |
Logica di elaborazione
tm-cli: cliente (0 = tutti)
tm-da-merce / tm-a-merce: range prodotti
tm-da-data / tm-a-data: range date
tm-tipo: T=Tutti, C=Chiusi, A=Aperti, S=Sospesi
tm-mag: magazzino
tm-divisa: divisa di riferimento (dal conto)
Flusso di stampa (b-stampa)
- Posizionamento su COGTESBP per chiave 3 (cli + data + mag),
st-cogtesbp-notmin-chia3
- Loop sulle testate buoni (
b10-loop):
- Filtro per cliente, date, tipo documento
- Rottura per cliente: stampa totale cliente precedente + nuova testata cliente
- Per ogni testata buono, scorre COGRIGBP (
b20-loop)
- Per ogni riga buono (
b20-loop):
- Filtro range prodotti (
bool-riga)
- Conversione prezzo nella divisa di riferimento (
COGU10W con operazione "Cambio")
- Calcolo importo = prezzo * quantita', arrotondamento
- Accumulo totali (per buono
ri-tot-bdp, per cliente ri-tot-cli, generale ri-tot-gen)
- Stampa totali buono, cliente, generale a fine elaborazione
Gestione salto pagina
bool-new-pg1/3/4/5: verificano se ci sono righe sufficienti prima di stampare sezioni che richiedono 1/3/4/5 righe, effettuando eventualmente un salto pagina con nuova testata.
Note tecniche
- GUI (screen section con
cogp71b-01.scr)
- Larghezza stampa: 80 caratteri
- Divisa del conto determinata con
get-divisa-conto all'apertura
- I prezzi delle righe vengono convertiti nella divisa del conto prima del calcolo importo