Vai al contenuto

COSO21 - Esiti Mav / Prospetto Ricevute Fiscali

Funzione

Stampa prospetto riepilogativo delle ricevute fiscali emesse in un periodo, calcolando imponibile, IVA e totale. Legge i movimenti dalla prima nota non contabilizzata (COGPNONC) filtrando per data e causali con IVA.

  • Contabilita' > Unione soci/clienti > Esiti Mav

Tabelle e file principali

Tabella/File Descrizione Accesso
COGTABEL (feurtab) Tabelle generiche (tipo 65 causali, tipo 67 aliquote IVA) Lettura
COGPNONC Prima nota non contabilizzata Lettura sequenziale (chiave 3: data movimento)
UNANASO Anagrafica soci Aperto ma non usato direttamente
COGPNCON Piano dei conti Aperto ma non usato direttamente
flsta File di stampa Scrittura

Copybook e sottoprogrammi

Elemento Tipo Ruolo
cogfiles.cpy COPY Descrizione record feurtab
cogtabel.cpy COPY Record COGTABEL
unanaso.fd/.cpy COPY Anagrafica soci
cogpncon.fd/.cpy COPY Piano dei conti
COGPNONC.CPY COPY Record prima nota non contabilizzata (in WS)
COGCONTA.CPY COPY Dati contabilita'
WORKSOC.CPY COPY Working-storage soci
utils52.cpy / utils54.cpy COPY Utility data e stampante
utilu10.cpy / k-u10.cpy COPY Utility input numerico
COGS52 CALL Input data con validazione
COGS54 CALL Selezione periferica stampa

Logica principale

  1. Inizializzazione: apre file (COGTABEL, COGPNCON, COGPNONC, UNANASO), legge azienda, trova mastro/conto soci (find-consoc da WORKSOC).
  2. Maschera date: visualizza form con data inizio e data fine. Validazione date tramite COGS52. Controlla che data fine >= data inizio.
  3. Selezione stampante: chiama COGS54 (80 caratteri di larghezza).
  4. Elaborazione (da a050):
  5. Posiziona COGPNONC su chiave 3 (data movimento) con data inizio.
  6. Scorre sequenzialmente fino a data fine (data7 > dataquier -> fine).
  7. Filtra: solo record con pno-mastro = wmas-soc, pno-conto = wcon-soc, pno-segno = "A" (avere).
  8. Per ogni movimento valido:
    • Legge causale da COGTABEL tipo 65 (pno-to).
    • Se causale ha flag IVA = "SI": somma pno-importo a som-impo (imponibile), calcola IVA (importo * aliquota / 100), legge prossimo record per la contropartita IVA.
    • Se causale senza IVA: estrae numero ricevuta dalla descrizione (pno-des), registra min/max numero ricevuta, somma a som-iva.
  9. Stampa prospetto (da a100):
  10. Intestazione con ragione sociale e data.
  11. Riga "Da data" / "A data".
  12. Riga "Ricevute da N." / "a N." (prima e ultima ricevuta).
  13. Totale imponibile, Totale IVA, Totale ricevute fiscali (imponibile + IVA).

Note

  • Programma legacy: usa GO TO estensivamente, PERFORM ... THRU, source-computer rmcobol.
  • COGPNONC e' dichiarato inline (non da copybook standard) con chiave primaria pnt-chia e 4 chiavi alternate.
  • Il numero ricevuta viene estratto dalla descrizione del movimento (pno-des -> comdesc2 -> d2b -> nric9).
  • Larghezza stampa: 80 caratteri.
  • Le causali vengono lette da COGTABEL tipo 65; le aliquote IVA da tipo 67.
  • Il campo desc-iva nel record causale indica se la causale prevede IVA ("SI").