COGP91 — Stampa Tabelle Ammortamenti (Cespiti)¶
Sorgente: cbl/cogp91.cbl | Tipo: interattivo a maschera + stampa | Program-ID: cogp91
Menu: Contabilita' > Cespiti > Stampe > Tabelle Ammortamenti
Scopo¶
Stampa i parametri aziendali dei cespiti e le tabelle delle percentuali d'ammortamento. Produce due sezioni distinte:
- Parametri Aziendali — dai record di tabella cespiti con tipo
99e gruppo/specie a zero (euta-ces-gruppo,euta-ces-specie, descrizione, anni ammortamento anticipato nuovi/usati, riduzione ammortamento primo anno, soglia beni ammortizzati interamente primo anno, tipo di ammortamento). - Percentuali d'Ammortamento — dai record di tipo
99con progressivoeuta-ces-1-prgvalorizzato: per ciascun gruppo, secondo il valore del progressivo (1, 2 o 3), stampa data decreto ministeriale, categoria, percentuali standard/anticipato/accelerato/ridotto ed esubero spese, oppure i conti (mastro/conto/sottoconto) collegati con descrizione risolta dal piano dei conti.
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| COGTABEL | (in opengen) |
Tabella cespiti (euta-rec, tipo 99): parametri aziendali e percentuali d'ammortamento; scansione con rottura su tipo/gruppo/specie |
| COGPNCON | (in opengen) |
Piano dei conti: rd-cogpncon per risolvere la descrizione dei conti collegati (call-descrizione, campi app-mas/app-con/app-sco) |
| flsta | flsta.fd / flsta.cpy |
File di stampa |
Flusso principale¶
Il programma e' guidato da un gestore di posizionamento p000 pilotato dalla variabile ex-flag, eseguito nel loop perform p000 until (ex-flag = 99):
a000— apertura file, caricamento lingua/azienda, lettura data di sistema;ex-flag = 1.p010(flag 1) — chiamata a COGS54 (call-cogs54) fino a F3/F2/ESC; su ESC o F2 termina (ex-flag = 99).p030(flag 3) — messaggio "Attendere... Stampa in Corso", azzeramento contatori;ex-flag = 5.p050(flag 5) — transizione aex-flag = 7.p070(flag 7) — ricerca parametri aziendali su COGTABEL (tipo 99, gruppo/specie 0) ed esecuzionestampa-parametri;ex-flag = 9.p090(flag 9) — scansione delle percentuali d'ammortamento; per ogni riga valutaeuta-ces-1-prge chiamastampa-ammortamento-01/-02/-03;ex-flag = 11.p110(flag 11) — chiusura stampa (s54-after-print, COGS54), rimozione messaggio;ex-flag = 99.fine/z-chiudi— chiusura COGPNCON e COGTABEL,z-99-exit-program,exit program.
Paragrafi di stampa: stampa-parametri, stampa-ammortamento-01/02/03, call-descrizione (descrizione conto dal piano dei conti), stampa-riga (write con gestione salto pagina) e intesta (intestazione con data, titolo e numero pagina, differenziata per type-stampa 1=parametri / 2=percentuali).
Sottoprogrammi chiamati¶
| Programma | Ruolo |
|---|---|
| COGS54 | Selezione periferica di stampa / anteprima (call-cogs54, s54-after-print a fine stampa) |
Note¶
- E' una subroutine con maschera (usa
mmsubw.cpy, nonmmmask.cpy):source-computer/object-computersonopc-sperry. - L'intero flusso di stampa e' orchestrato tramite la macchina a stati
ex-flag/p000(EVALUATE conperform p0xx), evitando iPERFORM THRUnei paragrafi di corpo; le scansioni di COGTABEL usanoPERFORM UNTILconrdnxt-cogtabelper posizionarsi sul primo record utile e per iterare. - Il salto pagina in
stampa-rigae' governato dal confrontoctr-riga > (s54-stm-lin - 12); la prima tabella ammortamento (n-of-ammort = 1) forza il salto pagina saturandoctr-rigaper separare i parametri aziendali dalle percentuali. call-descrizioneimposta il flagok/fl-boolin base al ritrovamento del conto sul piano dei conti; le righe conto vengono stampate solo se la descrizione e' trovata.- Nessuna configurazione RNEWCONF utilizzata.