COGV37 - Aggiornamento Semiautomatico Prezzo Vendita¶
Funzione¶
Aggiorna i prezzi di vendita delle merci in modalita' semi-automatica. Il programma estrae le merci da un listino di vendita, calcola i nuovi prezzi applicando ricarichi e arrotondamenti, e presenta la griglia all'operatore per la revisione. Supporta listini per fascia di quantita', export/import Excel per elaborazioni esterne, e puo' essere chiamato direttamente da una bolla di vendita.
E' piu' complesso di COGV36 (acquisto): gestisce listini con fasce quantita', divise multiple, prezzi particolari per cliente, e l'integrazione con Excel.
Menu¶
- Magazzino > Controllo Prezzi > Agg. Semiaut. Vendita
Tabelle e file principali¶
| Tabella | Descrizione | Accesso |
|---|---|---|
| FEURTAB | Tabella file/directory | R |
| COGRICLS | Listini di vendita | R/W - da cogv37.select e cogv37.fd |
| COGTRANS | File di transito merci (#$COGV37.{operatore}) |
R/W - indicizzato, chia1 |
| COGTRANS2 | File di transito dati merce (#$BOGV37.{operatore}) |
R/W - indicizzato, chia1+chia2 |
| COGASCII | File ASCII per export Excel | W - line sequential |
| COGMERCI | Anagrafica merci | R - da cogv37.select |
| COGGEANA | Anagrafica fornitori/clienti | R - da cogv37.select |
| COGTABEL | Tabella parametri | R - da cogv37.select |
| COGMAGAZ | Anagrafica magazzini | R - da cogv37.select |
Struttura COGTRANS (transito prezzi)¶
Chiave trs-chia1: trs-merce (gru+sot+cod) + trs-tip-lis + trs-rif + trs-fascia.
Campi: prezzo precedente (trs-precedente), nuovo (trs-pre), base (trs-pre-base), ricarico, arrotondamento, flag agg., importo aggiuntivo.
Struttura COGTRANS2 (transito dati merce)¶
Chiave trs2-chia2: trs2-seq + trs2-merce. Chiave alternativa trs2-chia1: trs2-merce.
Campi: descrizione, peso, volume, giacenza, ordini, confezione, prezzo acquisto, prezzo medio acquisto, valuta, flag listino, data ini/fin, flag aggiornamento (trs2-fl-agg).
Logica principale¶
Parametri di maschera¶
tab-maschera comprende: data, tipo ricerca (tm-ricerca/tm-ricerca-lgds/tm-ricerca-gds), ordinamento merci (tm-ord-mer), range merci (da/a merce con campi estesi: gru, sot, cod, classif. merci aggiuntive), flag "prezzi da" (tm-pre-da), gruppo clienti, flag aggiornamento (tm-fl-agg), fornitore/cliente (tm-for), divisa, riferimento bolla origine, flag servizi, tabella prezzi per fascia (tm-tab con k-max-ele-tab = 100 righe x k-max-lis-x-fascie = 200 fasce).
Flusso di elaborazione¶
-
Inizializzazione: lettura configurazione (
x99-conf, RNEWCONF), divisione conto (COGU10W), file di transitoCOGTRANSeCOGTRANS2aperti in output poi i-o ogni ciclo. -
Modalita' "called" da bolla di vendita (linkage
utilv37.cpy,V37-called = "COGV37"): imposta automaticamente il riferimento alla bolla (tm-w-mag/anno/tipob/bolla), la data e il tipo ricerca"D"(da bolla specifica). Per personalizzazione Idrolux, avvia direttamente la conferma automatica. -
Modalita' default: se configurata (
tm-cfg-default = "S"), salta la selezione parametri e avvia con valori predefiniti (ricerca"G", data odierna, tutte le merci). -
Raccolta parametri (maschera
cogv37-01.scr): a-tm-ricerca-lgds/a-tm-ricerca-gds: tipo di ricerca listino (F1 configurazione, F5 prezzi particolari, F7 ricarichi via COGF44)a-tm-data: data di validita' del listino (F8 calendario)a-tm-ord-mer: ordinamento mercia-tm-da-merce/a-tm-a-merce: range merci (util-s68, con classi merci multiple)a-tm-pre-da: sorgente prezzia-tm-ana-cod: fornitore/cliente di riferimento (util-s65; visibile in base a configurazione)a-tm-gruppo: gruppo clienti (F8)a-tm-fl-agg: flag modalita' aggiornamento-
Campi bolla di riferimento (
a-tm-w-*) se chiamato da bolla -
Caricamento prezzi: legge COGRICLS per le merci selezionate, popola COGTRANS e COGTRANS2. Per ogni merce con fasce di quantita', crea un record per fascia. Il prezzo nuovo viene calcolato applicando ricarico/arrotondamento al prezzo base.
-
Griglia (
a30,a-accept-grid): visualizza merci con colonne per prezzo base e prezzo per ogni fascia (dinamiche, fino ak-max-lis-x-fascie). Colonne identificate tramitetab-column(tm-column-ric,tm-column-lis). - F7 "Excel" (
k-f7-excel): export CSV per foglio di calcolo, poi import risultato - F7 "Ricarichi" (
k-f7-ricarichi): apre COGF44 per gestione ricarichi - F5: prezzi particolari per cliente/gruppo (COGU05 con
"Acc-Pre-Acq") -
Shift+F4: GRIDADMN
-
Conferma e aggiornamento (
a-richiesta-conferma,c-aggiorna): per ogni record in COGTRANS, aggiorna il prezzo corrispondente su COGRICLS. Gestisce flagtrs2-fl-agg(solo i record confermati vengono aggiornati). -
Export Excel (
d511-*): parsing del file ASCII prodotto da Excel per ricavare i nuovi prezzi per merce e fascia, con aggiornamento di COGTRANS prima del salvataggio definitivo.
Prezzi particolari (tab-prezzi-particolari, tpp-ele)¶
Array di max k-u05-ele (200) elementi per gestire prezzi speciali per singolo cliente o gruppo. Interagisce con COGU05.
Merci singole (tab-merci-singole, tms-ele)¶
Array per estrazione di merci specifiche, popolato da COGU05 in modalita' selezione singola.
Chiamate principali¶
| Programma | Scopo |
|---|---|
| COGU10W | Lettura divisa di conto (GetDivisaConto) |
| COGU05 | Selezione/visualizzazione prezzi particolari o merci singole |
| COGF44 | Gestione ricarichi (F7 in griglia) |
| GRIDADMN | Amministrazione layout griglia (Shift+F4) |
Copybook working-storage significativi¶
utilcogs0c.cpy, wgrid.cpy, utilgdad.cpy, utilncnf.cpy, utils21/37/52/65/68.cpy, utilu05/10/20/26/28.cpy, utilw36/w113.cpy, utilxls.cpy, utilu16.cpy, utilcogl61.cpy.
Linkage¶
UTILS01.CPY e UTILS01F.CPY: parametri standard. utilv37.cpy: struttura V37-* per chiamata da bolla di vendita (mag, ann, tip, num, data).
Note tecniche¶
- I file
COGTRANSeCOGTRANS2sono temporanei nella directory temp.COGTRANS2ha chiave alternativa su sequenza (trs2-seq) per ordinamento diverso da quello per merce. - Il flag
trs2-fl-agge' impostato a"N"prima dell'estrazione per Excel e a"S"dopo la reimportazione: i record non passati a Excel (es. merci conMER-VAL = "C") restano a"N"e non vengono aggiornati. - La struttura
tab-listini-e-fascie(tlf-ele) contiene fino ak-max-lis-x-fascie(200) combinazioni listino+fascia, usata per costruire dinamicamente le colonne della griglia. k-asc-rec-size= 2000 caratteri per riga del file ASCII Excel.- La personalizzazione Idrolux (
k-personal-idrolux) attiva la conferma automatica al primo caricamento se chiamato da bolla. - Il codice
d511-*gestisce il parsing riga per riga del CSV Excel, inclusa la gestione di listini e fasce multiple per ogni merce.