Vai al contenuto

COGG78 — Elenco Dichiarazioni d'Intento

Campo Valore
Sorgente cbl/cogg78.cbl
Program-ID COGG78
Tipo Programma GUI (elenco a griglia con spaginamento)
Posizione menu Contabilita' > Archivi & Tabelle > Stampe > Clienti

Scopo

Visualizzazione ed elenco delle lettere/dichiarazioni d'intento (COGLTINT) valide a una data data di estrazione. L'operatore indica una data; il programma estrae dalle dichiarazioni d'intento quelle il cui periodo di validita' (lti-data-ini-val .. lti-data-fin-val) comprende la data indicata, le riversa in un file di lavoro temporaneo (COGTRANS) e le presenta in una griglia con paginazione (page-up/page-down) ed esportazione Excel.

Puo' operare in modalita' selezione quando richiamato da un altro programma (w-cogg78-called = 'COGG78-CALLED'), restituendo la riga selezionata tramite la linkage util-cogg78.

Struttura / flusso

  1. apri — Rileva il numero di argomenti con C$NARG (1 = stand-alone, 2 = chiamato con linkage util-cogg78). Esegue z-99-init-program, ctr-abil, rd-azi, open-files. Configura i tasti funzione (invio/seleziona, F3 conferma/gestione, F1 configura, F5, F7, F8 aiuto/calendario/movimenti, SF4 griglia, SF5 esporta Excel, F9 ricerca avanzata) e prepara la maschera (rd-msk-pop, z-costruisci-controlli, z-prepara-tm-grid).
  2. a4 — Svuota la griglia, inizializza tab-maschera, attiva F3 conferma. Se richiamato come subroutine (w-cogg78-called), imposta w-dc-called = "S", valida i dati con x-controlla-dati e salta a a-avanti.
  3. a-tm-data-estrazione — Accept della data di estrazione (edit calendario tramite COGS52). Gestione eccezioni (z-99-exception-form), F3 (conferma), F2, validazione con x-controlla-tm-data-estrazione (data obbligatoria).
  4. a-fine-dati — Controllo complessivo (x-controlla-dati) e conferma (acc-conf).
  5. a-avanti — Costruisce il nome del file temporaneo COGTRANS (#$trscogg78. + operatore, in ext-tmp-dir), lo apre in output (stato 93 = funzione gia' in uso dallo stesso operatore), quindi carica i dati con carica-file e lo riapre in I-O.
  6. carica-file — Scorre COGLTINT (st-cogltint-notmin, rdnxt-cogltint), e per ogni dichiarazione d'intento la cui validita' comprende tm-data-estrazione scrive un record su COGTRANS (scrivi-cogtrans, chiavi trs-chia1/trs-chia2 = lti-chia1).
  7. a-grid-ini / carica-tab — Carica la prima pagina dalla griglia spaginata (x-spaginamento-start, z-costruisci-grid); se n-m = 0 avvisa "Nessun record estratto".
  8. a-grid — Ciclo eventi sulla griglia paginata (z-99-accept-paged-grid): PG-DWN/PG-UP per lo scorrimento pagine (pg-after-pg-dwn/pg-after-pg-up), SF4 (personalizzazione via GRIDADMN), SF5 (esporta Excel z-esporta-paged-grid), invio (in modalita' chiamata restituisce e va a fine).
  9. x-riempi-grid-record — Per ogni riga rilegge la dichiarazione COGLTINT (rd-cogltint), l'anagrafica cliente (rd-coggeana per grd-des), la descrizione articolo esente da COGTABEL (euta-tipo = 69, via rd-cogtabel), e formatta plafond e raggiunto tramite COGU10W.
  10. fine / z-chiudiz-close-files, chiusura finestra e file temporaneo COGTRANS; se chiamato con 2 argomenti restituisce util-w-cogg78 a util-cogg78; z-99-exit-program, goback.

File e tabelle principali

File logico Record/chiave Modo Uso
COGTRANS (temporaneo) trs-rec, chiave trs-chia1, alt. trs-chia2 (duplicates) I-O File di lavoro con i codici delle dichiarazioni estratte (nome #$trscogg78.<oper>)
COGLTINT lti-rec, chiave lti-chia1 Input Dichiarazioni/lettere d'intento (numero, autorizzazioni, articolo esente, validita', plafond, raggiunto)
COGGEANA ana-rec, chiave ana-tipo+ana-cod Input Anagrafica cliente (ragione sociale)
FEURTAB (COGTABEL) euta-rec, euta-tipo = 69 + euta-codr Input Descrizione articolo esente IVA

Sottoprogrammi chiamati

Programma Contesto Scopo
COGS52 a-tm-data-estrazione Edit/gestione data con calendario
COGU10W z-u10-tm-plafond, z-u10-tm-raggiunto Edit importi in divisa (plafond e raggiunto)
GRIDADMN z-prepara-tm-grid, z-costruisci-grid, SF4 Gestione, personalizzazione e riempimento griglia
C$NARG apri Conta gli argomenti passati (modalita' stand-alone vs chiamata)

Copybook principali

  • feurtab.fd / cogfiles.cpy / cogg78.select / cogg78.fd — file tabelle generico e file specifico
  • cogg78.wrk, cogg78.decla, cogg78.prc — working, declaratives e procedure generate da Screens
  • cogg78-01.scr — maschera (campo e-tm-data-estrazione, griglia e-tm-tab)
  • cogtrans.k01, cogtrans.k02 — accessi al file temporaneo COGTRANS (chiave primaria e secondaria)
  • dtab.cpy, fscrol2.cpy, utilpggr.cpy — supporto griglia spaginata
  • wgrid.cpy, utilgdad.cpy — gestione griglia e area GRIDADMN
  • utilu10.cpy (util-u10), utils52.cpy (util-s52) — aree comunicazione COGU10/COGS52
  • k-u10.cpy, k-personal.cpy, costanti-tgls.cpy, utilu20.cpy, utilw76.cpy, utiltgls02.cpy, utilcrms02.cpy, utils65.cpy, sendw76.cpy
  • wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy — working standard
  • grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy — fine procedure
  • Linkage: wcont.cpy, wcont1.cpy (stringhe), utilcogg78.cpy (util-cogg78, parametri di chiamata; incluso anche in working con replacing per copia locale util-w-cogg78)

Note

  • Il file COGTRANS e' un file di lavoro temporaneo dichiarato manualmente nel sorgente (SELECT/FD espliciti, non gestibile da Screens), col nome che include l'operatore (wo-oper) per univocita' per utente; lo stato 93 in open segnala che la funzione e' gia' in uso dallo stesso operatore.
  • La griglia usa lo spaginamento (paged grid, utilpggr.cpy/fscrol2.cpy) leggendo COGTRANS per la chiave secondaria trs-chia2 (paragrafi rn-start*, rp-start*, sn-read/sp-read) anziche' caricare tutto in tabella.
  • k-euta-tipo = 69 identifica la descrizione dell'articolo esente sulla tabella generica COGTABEL.
  • Doppia modalita' d'uso rilevata via C$NARG: stand-alone (visualizzazione) o subroutine di selezione (restituisce la riga scelta al chiamante).
  • Il programma e' di sola consultazione/estrazione: non modifica le dichiarazioni COGLTINT, scrive solo sul file temporaneo di lavoro.