Vai al contenuto

COGD44 — Controllo variazioni su bolle

Sorgente: cbl/cogd44.cbl | Tipo: Programma GUI standalone (consultazione con griglia) | Program-ID: cogd44

Menu: Magazzino > Uscite > Visualizzazioni [Controllo variazioni] ; Vendite > Bolle Vendita > Visualizzazioni [Controllo variazioni]


Scopo

Consultazione delle variazioni effettuate sulle bolle di vendita. Il sistema mantiene una copia "storica" delle bolle nelle tabelle di variazione documento (COGDVTES testate, COGDVRIG righe); COGD44 confronta questo snapshot con lo stato attuale del documento (COGTESBO + righe/movimenti COGMOMAG) e presenta in una griglia i documenti che risultano modificati o cancellati rispetto alla versione registrata.

Per ciascuna bolla in elenco mostra: documento (mag/anno/tipo/numero), versione, cliente e ragione sociale, data documento e stato (Modificato / Cancellato). Dalla griglia l'operatore puo':

  • F8 — aprire il dettaglio delle differenze (COGD45);
  • F3 — aprire la gestione della bolla (COGV56);
  • F5 — ripristinare la bolla alla versione iniziale (COGD46, operazione 'R');
  • F6 — consolidare la bolla attuale, accettando le modifiche (COGD46, operazione 'C').

File e tabelle principali

File/Tabella Copybook Uso
COGDVTES cogdvtes.k01 Testate variazioni documento (snapshot storico): scansione principale (carica-dati)
COGDVRIG cogdvrig.k01 Righe variazioni documento: confronto riga per riga (ciclo-momag/ciclo-righe)
COGTESBO cogtesbo.k01 Testate bolle attuali: verifica esistenza e confronto campi testata (tratta-riga, controlla-dati)
COGMOMAG cogmomag.k01 Movimenti/righe magazzino attuali: confronto valori riga (ciclo-righe, ciclo-momag)
COGGEANA coggeana.k01 Anagrafica generale: nome cliente (ana-nome)
COGTRANS cogtrans.k01 (dichiarazione manuale nel sorgente) File temporaneo per l'appoggio dei risultati e la paginazione della griglia

Flusso principale

  1. apri — init GUI, apertura file, x99-confi (config cliente corrispettivi), definizione dei tasti funzione e pulsanti custom Ripristina (F5)/Consolida (F6); costruzione del nome del file temporaneo COGTRANS in w-trs-name (dir temporanea + PID/operatore).
  2. a4 — reset maschera, pagina 1 del tab control.
  3. a-tm-cli / a-tm-data-doc-da / a-tm-data-doc-a — accept dei filtri: cliente (opzionale, COGS65W; zero = "Tutti") e intervallo date documento.
  4. a-fine-datix-controlla-dati — validazione filtri; F3 passa a pagina 2.
  5. a-pagina-2 — (ri)crea il file temporaneo COGTRANS (open output esclusivo per verificare che la funzione non sia gia' in uso da altro operatore), poi open i-o, quindi carica-dati.
  6. carica-dati / tratta-riga — scansione di COGDVTES; per ogni documento snapshot:
  7. se la bolla esiste ancora (COGTESBO): applica i filtri (cliente, tipo cliente, date, escludendo il cliente corrispettivi e le bolle gia' fatturate) e chiama controlla-dati;
  8. controlla-dati confronta testata e righe (ciclo-righe su COGDVRIG vs COGMOMAG, ciclo-momag per righe presenti nei movimenti ma non nello snapshot); se rileva una differenza marca il documento come modificato;
  9. se la bolla non esiste piu' (fl-bolla = 'N') la marca come cancellata (trs-stato = 'C');
  10. i documenti che risultano variati vengono scritti su COGTRANS (wr-cogtrans).
  11. a-grid-ini / carica-tab / z-costruisci-grid — riempimento paginato della griglia leggendo COGTRANS (routine rst-not-less, rdnxt-cogtrans, gestione via GRIDADMN).
  12. a-grid — gestione tasti sulla griglia (F3/F5/F6/F8, s-F4 personalizzazione griglia, s-F5 export Excel). Dopo un'operazione su una bolla (carica-riga) rigenera la relativa riga di COGTRANS.
  13. fine / z-chiudi — chiusura file, close/delete del temporaneo COGTRANS, uscita.

Sottoprogrammi chiamati

Programma Ruolo
COGD45 Dettaglio delle differenze della bolla selezionata (F8)
COGD46 Ripristino (ope = 'R') / consolidamento (ope = 'C') della bolla (F5/F6)
COGV56 Gestione/apertura della bolla selezionata (F3)
COGS65W (utils65.cpy) Aiuto/scelta cliente sul campo cliente (z-s65-tm-cli)
COGS52 (utils52.cpy) Gestore campo data / calendario (filtri date)
GRIDADMN (utilgdad.cpy) Gestore griglia: prepara, svuota, add-record, personalizzazione (s-F4)

I paragrafi st-cogtrans-*, rd-…, rdnxt-…, wr-cogtrans sono routine di I/O generate (gestori tabella generati).

Configurazioni (RNEWCONF)

Gruppo Chiave Destinazione Uso
cogesys cliente-corrispettivi tm-cfg-cli-corr Cliente corrispettivi da escludere dal controllo variazioni (x99-confi)

Note

  • COGTRANS e' una tabella temporanea dichiarata manualmente nel sorgente (SELECT, FD, cogtrans.k01): non e' gestita da Screens. Il nome file include directory temporanea, PID e operatore per garantire l'unicita' tra sessioni; l'apertura open output esclusiva in a-pagina-2 funge da lock logico ("Funzione gia' in uso da questo operatore").
  • Le bolle gia' fatturate (tes-flagfat = '*') vengono escluse dal controllo.
  • controlla-dati confronta un ampio insieme di campi di testata (anagrafica, pagamento, listino, causale, data, agente, flag fatturazione) e, riga per riga, i valori economici (merce, valuta, quantita', prezzi, sconti, valore, conti coge/cc, aliquota). Alcuni confronti sono commentati nel sorgente (note, cura, vettore, colli, destinazione) e quindi non concorrono alla rilevazione della variazione.
  • La griglia usa la paginazione standard (utilpggr.cpy, fscrol2.cpy) leggendo dal file temporaneo, non direttamente dalle tabelle di dettaglio.