Vai al contenuto

COGD08 - Esportazione Articoli d'Esenzione

Intestazione

Campo Valore
Programma COGD08
Titolo Esportazione Articoli d'Esenzione
Modulo Sistema
Posizione menu Sistema > Utility > Esportazioni > Tabelle > Articoli d'Esenzione

Scopo e logica generale

COGD08 estrae la tabella degli articoli d'esenzione IVA su un file di testo esterno. Gli articoli d'esenzione sono memorizzati nella tabella generalizzata COGTABEL con tipo record euta-tipo = 69; per ogni elemento vengono esportati il codice (euta-codr) e la descrizione dell'articolo (euta-ivart).

Il file prodotto ha nome fisso ARTESE.TXT ed e' scritto in formato line sequential con campi separati da punto e virgola (;). Ogni riga (ese-rec) contiene:

  • ese-cod (2 cifre) - codice articolo d'esenzione (euta-codr);
  • ese-des (40 caratteri) - descrizione dell'articolo (euta-ivart);
  • i separatori ese-fil-1 / ese-fil-2 valorizzati a ;.

La maschera richiede all'operatore la sola cartella di destinazione (tm-dir-file); il percorso completo viene composto concatenando cartella, slash di sistema e nome file. Directory di default M:\TRANSITO per az-personal = "MG", altrimenti ext-tmp-dir. Un contatore (tm-estratti) mostra a video i record scritti.


Flusso principale

  1. apri (main): imposta prog-err/w-nome-hlp, esegue z-99-init-program, ctr-abil, rd-azi, open-files. Definisce i tasti funzione (F3 conferma, F8 aiuto), legge la data di sistema, imposta titolo maschera "Estrazione Articoli Esenzione", prepara i controlli (z-costruisci-controlli).
  2. a4: inizializza tab-maschera, imposta il nome file ARTESE.TXT (tm-nome-file) e la directory di default in base a az-personal.
  3. a-tm-dir-file: accept della cartella di destinazione. ESC esce (fine), F3 richiede la conferma. Controllo obbligatorieta' via x-controlla-tm-dir-file (directory non vuota).
  4. a-richiesta-conferma: verifica finale (x-imposta-conferma) e richiesta conferma (acc-conf); se annullata torna a a-tm-dir-file.
  5. e10 / e10-loop (nucleo dell'estrazione):
  6. compone ws-nome-file e apre in output fileese; se l'apertura fallisce (stato non 00) segnala l'errore ed esce;
  7. initialize euta-rec + move 69 to euta-tipo + st-cogtabel-notmin per posizionarsi all'inizio degli articoli d'esenzione;
  8. ciclo e10-loop: rdnxt-cogtabel; a fine file o al cambio tipo (euta-tipo not = 69) va a e90;
  9. per ogni elemento valorizza ese-rec (codice, descrizione, separatori), scrive il record, incrementa tm-estratti e aggiorna il display.
  10. e90: messaggio "File creato: ..." con il percorso completo.
  11. fine / z-chiudi: close fileese, z-close-files, chiude window, z-99-exit-program, exit program.

File e tabelle acceduti

File Record Modalita' Uso
COGTABEL (logico feurtab) euta-rec (tipo euta-tipo = 69) Input Scansione sequenziale degli articoli d'esenzione (euta-codr, euta-ivart)
FILEESE ese-rec (line sequential, separatore ;) Output File di testo ARTESE.TXT prodotto dall'estrazione

Verbi di accesso a COGTABEL (da cogd08.prc): st-cogtabel-notmin, rdnxt-cogtabel. Il file di output fileese e' dichiarato direttamente nel sorgente (SELECT + FD) e scritto con write ese-rec.


Copybook principali

Strutture dati / FD: - feurtab.fd, cogfiles.cpy - file fisico generalizzato tabelle. - wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy - working-storage standard. - wcont.cpy (stringhe), wcont1.cpy (linkage) - aree di comunicazione comuni.

GUI: - mmmask.cpy - framework maschera GUI (fornisce z-99-init-program/z-99-exit-program).

Screen Designer: - cogd08.select, cogd08.fd, cogd08.wrk, cogd08.decla, cogd08.prc, cogd08-01.scr - artefatti generati dallo Screen Designer. cogd08.prc fornisce i verbi di accesso a COGTABEL.

Routine finali: grave.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy.


Programmi chiamati (CALL)

Nessuna CALL esplicita ad altri programmi. Tutta la logica di estrazione e' interna; l'accesso a COGTABEL avviene tramite i verbi generati in cogd08.prc.


Note

  • Il record esportato usa il punto e virgola (;) come separatore di campo.
  • Nome file di output fisso (ARTESE.TXT): l'operatore sceglie solo la cartella; directory di default M:\TRANSITO per az-personal = "MG", altrimenti ext-tmp-dir.
  • Il codice esportato proviene da euta-codr (non da euta-cod come nelle altre esportazioni di questa sezione): overlay specifico del tipo articolo d'esenzione.
  • L'estrazione scorre tutta e sola la porzione di COGTABEL con euta-tipo = 69 (articoli esenzione IVA nell'indice tipi, vedi interno/tabelle/cogtabel-indice.md); accesso su chiave primaria tipo + codice, nessuna chiave secondaria.
  • Programma "gemello" delle altre esportazioni di tabella della stessa sezione (cogd06 codici pagamento, cogd07 aliquote IVA), da cui differisce per tipo record e mappatura dei campi.
  • Rientra nel flusso flussi/sistema-import-export.md (esportazioni tabelle). La gestione interattiva degli articoli d'esenzione IVA e' documentata in programmi/coge69.md.
  • source-computer/object-computer sono impostati a acu-cobol.
  • Il flusso di elaborazione usa go to (stile legacy del sorgente originale).
  • Nessuna configurazione RNEWCONF letta.

Documentazione tecnica -- creata 2026-08-06