COGK39 -- Situazione Ricevute Fiscali Non Pagate¶
Sorgente: cbl/cogk39.cbl | Program-ID: COGK39 | Tipo: Interrogazione con griglia e stampa
Menu: Vendite > Fatturazione > Ricevute Fiscali > Ricevute Non Pagate, Vendite > Centro Revisioni > Documenti > Ricevute Non Pagate
Scopo¶
Visualizzazione e gestione delle ricevute fiscali (tipo "CO") con importo non pagato. Estrae da COGFATTU le ricevute dell'anno selezionato con fat-non-pag <> 0, le carica in un file di transito e le presenta in una griglia paginata. Consente di azzerare l'importo non pagato, visualizzare il dettaglio del documento e stampare un riepilogo.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | Tabella sistema | Input | Tabella di sistema |
| COGFATTU | Fatture | I-O | Archivio fatture (lettura ricevute e azzeramento non pagato) |
| COGGEANA | Anagrafica | Input | Anagrafica clienti (per nome cliente) |
| COGTRANS | File di transito | I-O (temp) | File temporaneo per dati griglia (ordinato per nome+cliente+data+fattura) |
| FLSTA | Stampa | Output | File di stampa |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
| cogk39.select | SELECT dei file |
| cogk39.fd | File Description |
| cogk39.wrk | Working storage generata |
| cogk39.prc | Procedure generate da Screens |
| cogk39-01.scr | Screen section |
| cogk39.decla | Declaratives |
| k-u10.cpy | Costanti COGU10 (gestione divise) |
| wgrid.cpy | Variabili gestione griglia |
| utilgdad.cpy | Interfaccia GRIDADMN |
| utils52.cpy | Interfaccia COGS52 (accept campi) |
| utils54.cpy | Interfaccia COGS54 (gestione stampa) |
| utils68.cpy | Interfaccia COGS68W |
| utilu10.cpy | Interfaccia COGU10 (editazione importi) |
| cogtrans.k01 | Chiave primaria transito |
| fscrol2.cpy | Routine scorrimento griglia paginata |
| utilpggr.cpy | Utilita' griglia paginata |
| dtab.cpy | Tabelle dati |
| GetDCont.cpy | Gestione divisa di conto |
| flsta.fd / flsta.cpy | File di stampa |
| cogazien.cpy | Dati azienda |
Struttura del programma¶
Variabili principali¶
tab-maschera(tm-*): parametri:tm-anno(anno),tm-divisa(divisa di visualizzazione),tm-tot-importo(totale importi non pagati),tm-tab(array fino a 100 elementi con dati fattura).trs-rec: record del file di transito:trs-nome(nome cliente, per ordinamento),trs-tip-ana+trs-cli(tipo/codice anagrafica),trs-data-fat(data fattura),trs-fattura(tipo+anno+numero),trs-importo(importo non pagato),trs-currency(divisa).grid-record(grd-*): record di interscambio con la griglia (fattura, data, codice cliente, nome, importo).tot-importo: totalizzatore importi non pagati.n-m: numero record nella pagina corrente.k-max-ele-tab: 100 (dimensione massima pagina griglia).k-chr-stampa: 100 colonne di stampa.
Flusso principale¶
- Inizializzazione (
apri): inizializza programma, determina divisa di conto, prepara griglia e crea file di transito temporaneo (#$COGK39.<operatore>). - Selezione anno (
a-tm-anno): accept anno di riferimento (obbligatorio). - Conferma e ricerca (
a-richiesta-conferma...a-carica-grid): valida l'anno, richiede conferma, esegue la ricerca.
Ricerca dati (a-ricerca ... ex-a-ricerca)¶
- Estrazione ricevute (
a60-loop): scorre COGFATTU con start sufat-tip = "CO"efat-ann = tm-anno. Per ogni fattura confat-non-pag <> 0, legge l'anagrafica del cliente da COGGEANA e scrive un record nel transito. Accumula il totale importi non pagati.
Visualizzazione griglia (a-grid)¶
- Caricamento griglia (
carica-tab): legge il transito (paginato) e popola la griglia. Supporta scorrimento con PagGiu'/PagSu' tramitefscrol2.cpy/utilpggr.cpy. - Operazioni sulla griglia:
- S-F4: amministrazione colonne griglia (GRIDADMN)
- S-F5: esportazione Excel (
z-esporta-paged-grid) - F5: azzeramento importo non pagato (
x5-azzero): legge la fattura con lock, azzerafat-non-pag, riscrive. Poi svuota e ricrea il transito concanc-cogtranse rilancia la ricerca. - F8: dettaglio fattura (
send-scr-2): chiama WINK19 passando tipo/anno/numero fattura e divisa. - F9: stampa riepilogativa (
stampa).
Stampa (stampa ... ex-stampa)¶
- Inizializza COGS54, scorre il transito stampando una riga per ogni ricevuta (documento, data, cliente, importo). Stampa il totale finale.
- La formattazione degli importi usa COGU10W per la divisa corretta.
Chiamate esterne¶
| Programma | Modalita' | Scopo |
|---|---|---|
| GRIDADMN | CALL | Gestione griglia avanzata |
| COGS54 | CALL | Gestione stampa (inizializzazione e chiusura) |
| COGU10W | CALL | Editazione e conversione importi per divisa |
| WINK19 | CALL | Visualizzazione dettaglio fattura/ricevuta (F8) |
Note¶
- Il file di transito e' esclusivo per operatore (
#$COGK39.<operatore>) e viene eliminato alla chiusura (delete file cogtrans). - La griglia e' paginata: i dati vengono caricati pagina per pagina dal transito tramite le routine di
fscrol2.cpyeutilpggr.cpy, con supporto PagGiu'/PagSu'. - L'azzeramento dell'importo non pagato (F5) richiede abilitazione alla modifica (
w-abi-agg). Dopo l'azzeramento, il transito viene ricreato e la griglia ricaricata. - La chiave del transito ordina per nome cliente + tipo anagrafica + codice cliente + data fattura + tipo/anno/numero fattura.
- Il programma gestisce il ridimensionamento della finestra (
ntf-resized) ricalcolando la griglia paginata. - Formato stampa: 100 colonne.