COGM55 - Statistiche Vendite Comparate per Merce¶
Descrizione¶
Programma interattivo che confronta le vendite per articolo tra due periodi distinti. Elabora i dati da un file temporaneo COGTRANS (generato in fase di elaborazione statistica) e dalla tabella TRAN-COGS96 per i corrispettivi. Mostra in griglia importi e quantita' per ciascun periodo, differenza assoluta e variazione percentuale. Supporta filtro per cliente, merce, tipo movimento, magazzino, ordinamento e dettaglio per cliente su singola riga.
Tipo: Visualizzazione statistica interattiva con griglia, stampa ed export Excel.
Menu: Statistiche > Vendite Comparate x Merce
Tabelle utilizzate¶
| Tabella | Accesso | Descrizione |
|---|---|---|
| FEURTAB (cogtabel) | Input | Tabella parametri generali azienda |
| COGTRANS | Input | File temporaneo statistiche (chiave1: tipo+dati-mov; chiave2: tipo+nome+dati-mov+chia1; chiave3: tipo+importo1+cli+chia1) |
| TRAN-COGS96 | Input | Tabella corrispettivi per gestione vendite al banco (tran-cogs96.fd/cpy) |
| FLSTA | Output | File di stampa |
Struttura record COGTRANS¶
trs-chia1:trs-tipox(01) +trs-dati-mov(fl-mc x(01) + conto mas/con/sco oppure merce gru+sot+cod + fl-vr) +trs-cli9(05)trs-nomex(40): descrizione merce o contotrs-qta1s9(08)v9(03): quantita' periodo 1trs-importo1(segno x(01) + imp 9(12)v9(06)): importo periodo 1trs-qta2s9(08)v9(03): quantita' periodo 2trs-imp2s9(12)v9(06): importo periodo 2
I tipi record sono: k-stt-tipo-merce = "M" (righe merce) e k-stt-tipo-contabilita = "C" (righe contabilita'/corrispettivi).
Copybook principali¶
| Copybook | Descrizione |
|---|---|
| cogm55.select | SELECT per i file del programma |
| cogm55.fd | File description |
| cogm55.wrk | Working storage generata da Screens |
| tran-cogs96.fd / tran-cogs96.cpy | File e record corrispettivi |
| cogm55-01.scr | Screen section maschera |
| cogm55.decla | Declaratives |
| k-u10.cpy / wrk-u10.cpy | Costanti e working-storage utility importi |
| cogazien.cpy | Dati azienda corrente |
| utils52.cpy | Utility date (COGS52W) |
| utils54.cpy | Utility stampante (COGS54) |
| utils65.cpy | Utility selezione anagrafica (COGS65W) |
| utils68.cpy | Utility selezione merce (COGS68) |
Parametri maschera (tab-maschera)¶
| Campo | Variabile | Descrizione |
|---|---|---|
| Tipo statistica | tm-tipo-stat |
Tipo di analisi statistica |
| Cliente | tm-cli-cod |
Filtro per cliente (F9 ricerca avanzata) |
| Tipo movimento | tm-tip-mov |
Tipo documento da includere |
| Ordinamento merce | tm-ord-mer |
Criterio di ordinamento |
| Da merce / A merce | tm-merce, tm-merce-a |
Intervallo merce (con cma, cmf, cmc, bc) |
| Magazzino | tm-mag |
Filtro magazzino |
| Da data periodo 1 | tm-data-da1 |
Inizio primo periodo |
| A data periodo 1 | tm-data-a1 |
Fine primo periodo |
| Da data periodo 2 | tm-data-da2 |
Inizio secondo periodo |
| A data periodo 2 | tm-data-a2 |
Fine secondo periodo |
| Movimento | tm-mov |
Filtro tipo movimento |
| Ordinamento | tm-ord |
Ordinamento risultati |
Flusso di elaborazione¶
- Parametri: accept dei campi di selezione con validazione; il nome del file COGTRANS e' in
w-trs-name(costruito dinamicamente). - Elaborazione (alla conferma F3):
- Scansione COGTRANS sulla chiave2 (
trs-tipo + trs-nome + ...) per il range merce selezionato. - Gestione corrispettivi (
k-code-corrispettivi = 99998): lettura TRAN-COGS96. - Rottura di livello per merce (
old-conto): accumulo totali parziali per merce (totm-qta1,totm-imp1,totm-qta2,totm-imp2). - Rottura per cliente (
old-cli): accumulo totali per cliente (totc-*). - Calcolo differenza (
diffe = trs-imp1 - trs-imp2) e totali generali (tot-tot1,tot-tot2). - Popolamento griglia:
grd-desc,grd-imp1,grd-imp2,grd-diff,grd-diff-perc,grd-qta1,grd-qta2,grd-diff-q,grd-diff-q-perc. - Visualizzazione griglia: fino a
k-max-ele-tab = 100elementi; in fondo righe totale. - Dettaglio cliente (F8 su riga selezionata): visualizzazione distribuzione per cliente dell'articolo selezionato.
- Stampa (F9): larghezza
k-chr-stampa = 132caratteri; intestazione con titolo, data, parametri di selezione; righe dettaglio con descrizione, imp1, imp2, differenza e percentuale; righe totale. - Export Excel (Shift+F5).
Chiamate a sottoprogrammi¶
| Programma | Scopo |
|---|---|
| COGS54 | Gestione stampante |
| COGS52W | Gestione campo data con calendario |
| COGS65W | Selezione anagrafica cliente (F9) |
| COGS68 | Selezione merce (da/a) |
Note tecniche¶
- Il file COGTRANS e' generato da un programma di elaborazione statistica upstream; il nome e' in
w-trs-name(costruito daext-tmp-dir+ operatorewo-oper). k-code-corrispettivi = 99998: codice speciale per righe corrispettivi (vendite al banco), gestite leggendo TRAN-COGS96 in aggiunta a COGTRANS.- I totali sono organizzati su tre livelli: merce (
totm-*), cliente (totc-*), generale (totg-*). - La griglia ha colonne
grd-diff-perc(zzz,zz-) per la percentuale;grd-qta1/2con redefine decimale (------9,999). - La variabile
periodo(9(01)) seleziona quale periodo e' attivo nella navigazione. - Il parametro
p-parametri(p-cli-cod,p-tipo-stat,p-tip-mov,p-mag,p-merce, date,p-ord) permette la chiamata del programma con parametri preimpostati da programmi chiamanti.