Vai al contenuto

COSO15 - Stampa Riepilogo Bollettini

Funzione

Stampa riepilogativa dei bollettini raggruppata per causale contabile, con totali di importo e IVA. Legge i movimenti dalla prima nota contabilizzata (COGCOATT) e li accumula su un file temporaneo indicizzato per causale/socio (COGTRANS).

  • Contabilita' > Unione soci/clienti > Bollettini > Stampa Riepil.Bollettini

Tabelle e file principali

Tabella/File Descrizione Accesso
COGTABEL (feurtab) Tabelle generiche (tipo 06/97, tipo 66, tipo 67 aliquote IVA) Lettura
COGCOATT Prima nota contabilizzata Lettura sequenziale (chiave 2: mastro/conto/socio)
UNANASO Anagrafica soci Lettura
COGTRANS File temporaneo di transito (causale + socio -> importo + IVA) Lettura/Scrittura
flsta File di stampa Scrittura

Copybook e sottoprogrammi

Elemento Tipo Ruolo
coso15.select/.fd/.wrk/.prc/.decla COPY Struttura programma
coso15-01.scr COPY Screen section
cogcoatt.fd/.cpy COPY Prima nota contabilizzata
COGCONTA.CPY COPY Dati contabilita'
utilo13.cpy COPY Utility selezione causali multiple
utils52/54/65/99 COPY Utility data/stampante/socio/causali
utilo30.cpy COPY Utility lookup zone
COGS54 CALL Selezione periferica stampa
COSO13 CALL Selezione causali
COSO30 CALL Lookup zone

Logica principale

  1. Inizializzazione: apre file, legge config contab. (tipo 66), apre COGCOATT. Crea file temporaneo COGTRANS (indexed, chiave causale+socio) in ext-tmp-dir.
  2. Maschera filtri: accept di importo minimo, tipo estrazione (T=tutte/Z=zona), zona, tipo soci (1=tutti/2=attivi/3=dimessi), intervallo soci, tipo causali, date.
  3. Elaborazione (stampa):
  4. Legge config mastro/conto soci da COGTABEL tipo 06 codso1=97.
  5. Posiziona su COGCOATT con st-cogcoatt-notmin-chia2 (mastro/conto/socio-da).
  6. Scorre COGCOATT filtrando per date, escludendo causali 080/081, record annullati (att-effa <> 0).
  7. Per ogni socio filtrato (zona, tipo), legge UNANASO per verificare zona e tipo soci.
  8. Per ogni movimento valido: legge causale da COGTABEL (tipo 65) per ottenere flag IVA; se IVA presente, calcola IVA da aliquota (tipo 67).
  9. Accumula importi su COGTRANS: READ cogtrans INVALID KEY WRITE, poi REWRITE con importo/IVA aggiornati.
  10. Stampa riepilogo (statot): scorre COGTRANS sequenzialmente. Per ogni causale stampa descrizione, importo totale e IVA totale. Alla fine stampa totale complessivo.
  11. Chiusura: cancella file COGTRANS (DELETE FILE).

Note

  • Il file COGTRANS e' temporaneo, creato all'inizio e cancellato alla chiusura. Chiave: caucomp (3) + causocio (5).
  • L'IVA viene calcolata per ogni singolo movimento: att-importo * aliq / 100 (arrotondamento).
  • Le causali 080 e 081 sono sempre escluse.
  • A differenza di COSO11 (che dettaglia per socio), COSO15 raggruppa tutto per causale.
  • Larghezza stampa: 132 caratteri.