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
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).
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.
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).
a-fine-dati — Controllo complessivo (x-controlla-dati) e conferma (acc-conf).
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.
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).
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".
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).
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.
fine / z-chiudi — z-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.