Vai al contenuto

COGD93 - Estrazione Vendite per Realco

Intestazione

Campo Valore
Programma COGD93
Titolo Estrazione Vendite per Realco
Modulo Sistema
Posizione menu Sistema > Utility > Esportazioni > Estrazione Vendite X GDO > Vendite x Realco

Scopo e logica generale

COGD93 estrae bolle e fatture di vendita destinate alla catena GDO Realco producendole in un unico file sequenziale con tracciato compatibile CONAD (cogdcona.cpy, record cp-b-rec). Appartiene alla famiglia di estrazioni vendite GDO insieme a COGD01 (Coop Estense), COGD95 (Coop Nordest) e COGD96 (Coop Adriatica); COGD93/95/96 condividono lo stesso tracciato Conad e una struttura molto simile, differenziandosi nel modo in cui valorizzano i campi di intestazione (cliente/coop/socio) e i codici articolo.

L'operatore imposta un intervallo di date; il programma scandisce le fatture (COGFATTU) del cliente configurato, per ognuna risale ai DDT tramite COGRACCO e ne estrae le righe da COGMOMAG, consolidate nella tabella temporanea COGTRANS. Per ogni bolla scrive un record di testata (tipo "01") e per ogni articolo un record di riga (tipo "02"). A differenza di COGD01 non produce record di piede/imponibili: il tracciato Conad e' orientato ai DDT.

La configurazione e' persistita in COGTABEL come record euta-tipo = 70, argomento SPMG, chiave COGD93, tramite gli overlay euta-c047-* (condivisi con COGD95/COGD96). Il nome del file di output viene richiesto tramite la subroutine COGS23. E' presente l'archivio locale COGD93.ARC per la corrispondenza negozio interno -> codice negozio.


Flusso principale

  1. a00 (main): imposta prog-err/w-nome-hlp/w-nome-msk, ctr-abil, open-files, open-fil-neg (crea COGD93.ARC in ext-arc-dir), rd-azi; prepara la maschera pop-up (mm-1).
  2. a4: azzera tab-maschera, titolo "Estrazione Dati x REALCO"; legge la configurazione (x99-src-cfg, record tipo 70/SPMG/COGD93) o inizializza i default (x99-cfg-init).
  3. a-10 / a-50: accept data inizio/fine con COGS52; F1 riapre la configurazione (x99-conf, dove il nome file e' acquisito con COGS23); controllo data partenza <= data arrivo.
  4. a-90: conferma con F3.
  5. b-00: risolve il nome fisico del file (w-cfg-nom-bol; in thin-client realco.dat su ext-tmp-dir), apre in output filfat, mostra la finestra di avanzamento con contatori bolle/righe.
  6. b-00-read: scorre COGFATTU; filtro per intervallo date e cliente (fat-cli = tm-cfg-cli); per ogni fattura valida esegue find-bolle.
  7. find-bolle: da COGRACCO risale ai DDT collegati alla fattura; per ognuno crea la tabella COGTRANS (init-cogtrans), scorre COGMOMAG, alla prima riga scrive la testata bolla (bolla-testa) e accumula le righe (bolla-corpo), poi svuota la tabella (svuota-bolla).
  8. bolla-testa (record "01"): progressivo, riferimento fattura (cp-t-riffat) e bolla (cp-t-rifbol), date, codice fornitore (cp-t-codfor), codice socio derivato da mag-figlio/mag-padre, divisa "EUR".
  9. bolla-corpo: come COGD01, risolve merce vendita/merce cliente (COGMERLK/COGMERCL) per aziende PM; accumula quantita'/valore/colli in COGTRANS.
  10. svuota-bolla (record "02"): per ogni articolo scrive codice articolo a 9 (cp-r-codart-9, azzeramento zeri iniziali), descrizione, quantita', prezzo, colli, unita' di misura, codice IVA (da COGTABEL tipo 67), tipo cessione "1"; accumula i totali imponibile w-val/w-val1.
  11. b-50: chiude il file, in thin-client copia su client via COPIAF, mostra i totali imponibile, memorizza l'ultima data (x99-mem-data).
  12. fine / z-chiudi: z-99-exit-program, exit program.

File e tabelle acceduti

File Record Modalita' Uso
COGFATTU fat-rec Input (start/read next) Fatture di vendita; filtro data + cliente
COGRACCO rac-rec Input Raccordo fattura -> DDT
COGMOMAG mag-recz Input Righe di magazzino del DDT
COGMERCI mer-rec Input Descrizione merce
COGMERLK mlk-rec Input (st/rdnxt) Collegamento merce vendita/merce cliente (tipo "CV")
COGMERCL mcl-rec Input Codice merce cliente (CMC) per azienda PM
COGGEANA ana-rec Input Anagrafica cliente/negozio
COGTABEL euta-rec I-O Configurazione (tipo 70, SPMG/COGD93); codici IVA (tipo 67)
COGTRANS trs-rec I-O temporaneo Consolidamento righe bolla ($COGD93. in ext-tmp-dir)
neg-fil (COGD93.ARC) neg-rec I-O Corrispondenza negozio interno -> codice negozio
filfat cp-b-rec (cogdcona.cpy) Output line-sequential File prodotto in tracciato Conad

Tracciato prodotto (Realco / Conad, cogdcona.cpy) - file unico:

  • Record "01" (testata, overlay cp-t): progressivo, riferimento fattura/bolla e relative date, codice fornitore, tipo fornitore, codice cliente/coop/socio, tipo socio, divisa.
  • Record "02" (riga, overlay cp-r): progressivo, codice articolo (6 + 9), descrizione, quantita', prezzo, numero pezzi, unita' di misura, codice IVA, tipo cessione.

Copybook principali

Strutture dati / FD: - feurtab.fd + cogfiles.cpy - file fisico generalizzato tabelle. - cogtabel, coggeana, cogmerci, cogfattu, cogracco, cogmomag, cogmercl, cogmerlk (.fd + .cpy) - archivi acceduti. - cogdcona.cpy (cp-b-rec) - tracciato Conad del file prodotto. - wstato.cpy, wgrave.cpy, wopenf.cpy, wnscr.cpy, cogazien.cpy - working-storage standard. - utilw06.cpy, utils52.cpy, utils23.cpy, utils65.cpy - aree di supporto (help, data, stringa/nome file). - l-copiaf.cpy (working), u-copiaf.cpy (linkage) - trasferimento file client/server.

Linkage: wcont.cpy (stringhe), wcont1.cpy.

Routine finali: stato.cpy, stato1.cpy, winmsg.cpy, grave.cpy, open1.cpy, mmmask.cpy, scree.cpy, sendw06.cpy, cogmercl.k01, cogmerlk.k01, cogmerlk.k02.


Programmi chiamati (CALL)

Programma Scopo
COGS52 Accept/verifica data con calendario
COGS23 Accept del nome file di output (stringa)
COPIAF Trasferimento del file prodotto sul client (thin-client)

Note

  • Produce un unico file in tracciato Conad (cogdcona.cpy), condiviso con COGD95 (Coop Nordest) e COGD96 (Coop Adriatica).
  • Specificita' Realco: codice socio ricavato da mag-figlio (se non zero) altrimenti mag-padre; i campi cliente/coop non sono valorizzati (spazi) a differenza di COGD95/COGD96.
  • Il nome del file di output e' acquisito con la subroutine COGS23 (default A:\REALCO.DAT), diversamente da COGD01 che usa un accept diretto.
  • Rispetto a COGD01 non genera i record di testata/piede archivio ("HH"/"FF") ne' il piede imponibili/IVA per fascia.
  • La risoluzione merce vendita/merce cliente (COGMERLK/COGMERCL) e' attiva solo per aziende PM.
  • Configurazione persistita in COGTABEL tipo 70 (euta-c047-*, SPMG/COGD93): cliente, codice fornitore, nome archivio, ultima data estrazione.
  • Fa parte del flusso Estrazione vendite GDO.

Documentazione tecnica -- creata 2026-08-06