Vai al contenuto

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

  1. Inizializzazione (apri): inizializza programma, determina divisa di conto, prepara griglia e crea file di transito temporaneo (#$COGK39.<operatore>).
  2. Selezione anno (a-tm-anno): accept anno di riferimento (obbligatorio).
  3. Conferma e ricerca (a-richiesta-conferma ... a-carica-grid): valida l'anno, richiede conferma, esegue la ricerca.

Ricerca dati (a-ricerca ... ex-a-ricerca)

  1. Estrazione ricevute (a60-loop): scorre COGFATTU con start su fat-tip = "CO" e fat-ann = tm-anno. Per ogni fattura con fat-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)

  1. Caricamento griglia (carica-tab): legge il transito (paginato) e popola la griglia. Supporta scorrimento con PagGiu'/PagSu' tramite fscrol2.cpy / utilpggr.cpy.
  2. Operazioni sulla griglia:
  3. S-F4: amministrazione colonne griglia (GRIDADMN)
  4. S-F5: esportazione Excel (z-esporta-paged-grid)
  5. F5: azzeramento importo non pagato (x5-azzero): legge la fattura con lock, azzera fat-non-pag, riscrive. Poi svuota e ricrea il transito con canc-cogtrans e rilancia la ricerca.
  6. F8: dettaglio fattura (send-scr-2): chiama WINK19 passando tipo/anno/numero fattura e divisa.
  7. F9: stampa riepilogativa (stampa).

Stampa (stampa ... ex-stampa)

  1. Inizializza COGS54, scorre il transito stampando una riga per ogni ricevuta (documento, data, cliente, importo). Stampa il totale finale.
  2. 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.cpy e utilpggr.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.