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-2valorizzati 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¶
apri(main): impostaprog-err/w-nome-hlp, eseguez-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).a4: inizializzatab-maschera, imposta il nome fileARTESE.TXT(tm-nome-file) e la directory di default in base aaz-personal.a-tm-dir-file: accept della cartella di destinazione. ESC esce (fine), F3 richiede la conferma. Controllo obbligatorieta' viax-controlla-tm-dir-file(directory non vuota).a-richiesta-conferma: verifica finale (x-imposta-conferma) e richiesta conferma (acc-conf); se annullata torna aa-tm-dir-file.e10/e10-loop(nucleo dell'estrazione):- compone
ws-nome-filee apre in outputfileese; se l'apertura fallisce (stato non00) segnala l'errore ed esce; initialize euta-rec+move 69 to euta-tipo+st-cogtabel-notminper posizionarsi all'inizio degli articoli d'esenzione;- ciclo
e10-loop:rdnxt-cogtabel; a fine file o al cambio tipo (euta-tipo not = 69) va ae90; - per ogni elemento valorizza
ese-rec(codice, descrizione, separatori), scrive il record, incrementatm-estrattie aggiorna il display. e90: messaggio "File creato: ..." con il percorso completo.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 defaultM:\TRANSITOperaz-personal = "MG", altrimentiext-tmp-dir. - Il codice esportato proviene da
euta-codr(non daeuta-codcome nelle altre esportazioni di questa sezione): overlay specifico del tipo articolo d'esenzione. - L'estrazione scorre tutta e sola la porzione di
COGTABELconeuta-tipo = 69(articoli esenzione IVA nell'indice tipi, vediinterno/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 inprogrammi/coge69.md. source-computer/object-computersono impostati aacu-cobol.- Il flusso di elaborazione usa
go to(stile legacy del sorgente originale). - Nessuna configurazione RNEWCONF letta.
Documentazione tecnica -- creata 2026-08-06