Vai al contenuto

COGD06 - Esportazione Codici Pagamento

Intestazione

Campo Valore
Programma COGD06
Titolo Esportazione Codici Pagamento
Modulo Sistema
Posizione menu Sistema > Utility > Esportazioni > Tabelle > Codici Pagamento

Scopo e logica generale

COGD06 estrae la tabella dei codici di pagamento su un file di testo esterno. I codici di pagamento sono memorizzati nella tabella generalizzata COGTABEL con tipo record euta-tipo = 14; per ogni elemento vengono esportati il codice (euta-cod) e la descrizione (euta-pg-des).

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

  • pag-cod (2 cifre) - codice pagamento (euta-cod);
  • pag-des (40 caratteri) - descrizione (euta-pg-des);
  • i separatori pag-fil-1 / pag-fil-2 valorizzati a ;.

La maschera GUI richiede all'operatore la sola cartella di destinazione (tm-dir-file); il percorso completo viene composto concatenando cartella, slash di sistema e nome file. La directory di default e' M:\TRANSITO per l'azienda con az-personal = "MG", altrimenti la directory temporanea di sistema (ext-tmp-dir).

Durante l'estrazione un contatore (tm-estratti) mostra a video il numero di 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 codici di pagamento", prepara i controlli (z-costruisci-controlli).
  2. a4: inizializza tab-maschera, imposta il nome file CODPAG.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 (la directory non puo' essere vuota).
  4. a-richiesta-conferma: verifica finale (x-imposta-conferma) e richiesta conferma (acc-conf); se l'utente annulla torna a a-tm-dir-file.
  5. e10 / e10-loop (nucleo dell'estrazione):
  6. compone il nome file completo (ws-nome-file) e apre in output filepag; se l'apertura fallisce (stato non 00) segnala l'errore ed esce;
  7. initialize euta-rec + move 14 to euta-tipo + st-cogtabel-notmin per posizionarsi all'inizio dei codici pagamento;
  8. ciclo e10-loop: rdnxt-cogtabel; a fine file o al cambio tipo (euta-tipo not = 14) va a e90;
  9. per ogni codice valorizza pag-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 filepag, 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 = 14) Input Scansione sequenziale dei codici di pagamento (euta-cod, euta-pg-des)
FILEPAG pag-rec (line sequential, separatore ;) Output File di testo CODPAG.TXT prodotto dall'estrazione

Verbi di accesso a COGTABEL (da cogd06.prc): st-cogtabel-notmin, rdnxt-cogtabel. Il file di output filepag e' dichiarato direttamente nel sorgente (SELECT + FD) e scritto con write pag-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 (stato I/O, errori, apertura file, dati azienda). - 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: - cogd06.select, cogd06.fd, cogd06.wrk, cogd06.decla, cogd06.prc, cogd06-01.scr - artefatti generati dallo Screen Designer. Il .wrk include le costanti/controlli della maschera; cogd06.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 cogd06.prc.


Note

  • Il record esportato usa il punto e virgola (;) come separatore di campo (formato CSV-like).
  • Il nome file di output e' fisso (CODPAG.TXT): l'operatore sceglie solo la cartella di destinazione.
  • Directory di default differenziata: M:\TRANSITO per az-personal = "MG", altrimenti ext-tmp-dir (directory temporanea di sistema).
  • L'estrazione scorre tutta e sola la porzione di COGTABEL con euta-tipo = 14 (codici pagamento 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 (cogd07 aliquote IVA, cogd08 articoli d'esenzione), da cui differisce solo per tipo record e mappatura dei campi.
  • Rientra nel flusso flussi/sistema-import-export.md (esportazioni tabelle). Il collegamento dei codici pagamento verso altre procedure e' gestito da cogd14.
  • 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