COGD07 - Esportazione Aliquote IVA¶
Intestazione¶
| Campo | Valore |
|---|---|
| Programma | COGD07 |
| Titolo | Esportazione Aliquote IVA |
| Modulo | Sistema |
| Posizione menu | Sistema > Utility > Esportazioni > Tabelle > Aliquote Iva |
Scopo e logica generale¶
COGD07 estrae la tabella delle aliquote IVA su un file di testo esterno. Le aliquote sono memorizzate nella tabella generalizzata COGTABEL con tipo record euta-tipo = 67.
Il file prodotto ha nome fisso ALIQUOTE.TXT ed e' scritto in formato line sequential con campi separati da punto e virgola (;). Per ogni elemento la riga (ali-rec) contiene:
ali-cod(2 cifre) - codice aliquota (euta-cod);- la descrizione a 40 caratteri (
ali-des), gestita in modo condizionato: - se l'aliquota (
euta-ivali) e' diversa da zero, nella descrizione viene riportato il valore percentuale numerico (ali-des2-es, ridefinizione99,99diali-des); - se l'aliquota e' zero (esente), viene riportata la descrizione di esenzione (
euta-ivaes) inali-des; ali-ali(99,99) - valore dell'aliquota (euta-ivali);- i separatori
ali-fil-1/ali-fil-2/ali-fil-3valorizzati 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 Aliquote IVA", prepara i controlli (z-costruisci-controlli).a4: inizializzatab-maschera, imposta il nome fileALIQUOTE.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 outputfileali; se l'apertura fallisce (stato non00) segnala l'errore ed esce; initialize euta-rec+move 67 to euta-tipo+st-cogtabel-notminper posizionarsi all'inizio delle aliquote;- ciclo
e10-loop:rdnxt-cogtabel; a fine file o al cambio tipo (euta-tipo not = 67) va ae90; - per ogni elemento valorizza
ali-rec(codice, descrizione/valore secondoeuta-ivali, separatori), scrive il record, incrementatm-estrattie aggiorna il display. e90: messaggio "File creato: ..." con il percorso completo.fine/z-chiudi:close fileali,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 = 67) |
Input | Scansione sequenziale delle aliquote IVA (euta-cod, euta-ivali, euta-ivaes) |
| FILEALI | ali-rec (line sequential, separatore ;) |
Output | File di testo ALIQUOTE.TXT prodotto dall'estrazione |
Verbi di accesso a COGTABEL (da cogd07.prc): st-cogtabel-notmin, rdnxt-cogtabel. Il file di output fileali e' dichiarato direttamente nel sorgente (SELECT + FD) e scritto con write ali-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:
- cogd07.select, cogd07.fd, cogd07.wrk, cogd07.decla, cogd07.prc, cogd07-01.scr - artefatti generati dallo Screen Designer. cogd07.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 cogd07.prc.
Note¶
- La descrizione esportata e' condizionata all'aliquota: valore percentuale numerico se
euta-ivalidiversa da zero, descrizione di esenzione (euta-ivaes) se zero. - Il record esportato usa il punto e virgola (
;) come separatore di campo. - Nome file di output fisso (
ALIQUOTE.TXT): l'operatore sceglie solo la cartella; directory di defaultM:\TRANSITOperaz-personal = "MG", altrimentiext-tmp-dir. - L'estrazione scorre tutta e sola la porzione di
COGTABELconeuta-tipo = 67(aliquote 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, cogd08 articoli d'esenzione), da cui differisce per tipo record e mappatura dei campi.
- Rientra nel flusso
flussi/sistema-import-export.md(esportazioni tabelle). La gestione interattiva delle aliquote IVA e' documentata inprogrammi/coge67.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