COGP95 - Stampa Bollato Cespiti¶
Sorgente: cbl/cogp95.cbl | Program-ID: COGP95 | Tipo: Stampa/report contabile (maschera parametri + stampa)
Menu: Contabilita' > Cespiti > Stampe > Bollato cespiti
Scopo¶
Stampa il registro dei beni ammortizzabili (bollato cespiti / libro inventario). Scorre l'anagrafica cespiti e, per ciascun cespite, i relativi movimenti dell'esercizio richiesto, ricostruendo per movimento valore storico, fondo (ordinario/anticipato/accelerato/ridotto), quote non ammortizzabili/non deducibili, super ammortamento e residuo. Produce i riporti iniziali (movimenti degli esercizi precedenti), il dettaglio dell'anno, i totali per categoria e i totali generali.
Supporta tre formati di output: stampa su carta a righe, stampa Word/Area-Report (WORDMDL) e intestazione personalizzata per consorzi (az-consorzi = "S").
File e tabelle¶
| File/Tabella | Modalita' | Descrizione / campi chiave usati |
|---|---|---|
| FEURTAB | Input | Parametri azienda (cogfiles.cpy, dati cogazien.cpy) |
| COGCESAN | I-O | Anagrafica cespiti (csa-rec): csa-cod, csa-nome, csa-cat, csa-data-acq/csa-acq-*, csa-ultimo-amm, csa-stato, csa-cat-originale. Chiave secondaria cogcesan.k02. Riscritta (rwr-cogcesan) per sostituzione temporanea categoria di stampa |
| COGCESMO | Input | Movimenti cespiti (csm-rec): csm-cod, csm-anno/csm-data, csm-imp, csm-fl-1 (tipo movimento), csm-per, csm-forn, csm-fat-*. Chiavi secondarie cogcesmo.k02, cogcesmo.k05 |
| COGTABEL | Input | Tabella generica (euta-rec) tipo 99: parametri esercizio cespiti (euta-ces-ini-mm/-gg, euta-ces-1-*, euta-ces-cat-des, euta-ces-cat-st) |
| COGGEANA | Input | Anagrafica clienti/fornitori (ana-rec) per intestazione e note movimento (fornitore/cliente + fattura) |
| COGFATTU | Input | Fatture (aperta in open-files, riferimenti fattura cespite) |
| flsta / riga | Output | File di stampa report |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
cogp95.select, cogp95.fd, cogp95.wrk, cogp95-01.scr, cogp95.prc, cogp95.decla |
Screen Designer |
feurtab.fd, cogfiles.cpy |
Layout FEURTAB |
flsta.fd, flsta.cpy |
File di stampa |
k-u10.cpy, utilu10.cpy |
Costanti + linkage editing importi (COGU10W) |
utils52.cpy, utils54.cpy |
Linkage data (COGS52W) e stampa (COGS54) |
utilncnf.cpy |
Linkage RNEWCONF |
utilwordmdl.cpy, utilcogpa3.cpy, utilcogsc1.cpy |
Linkage stampa Area-Report/Word (WORDMDL, COGPA3, COGSC1) |
getdcont.cpy |
Recupero divisa del conto (get-divisa-conto) |
wgrave, wnscr, wopenf, wstato, cogazien |
Working storage standard + dati azienda |
wcont.cpy, wcont1.cpy |
Linkage standard (stringhe) |
stato, stato1, winmsg, grave, opengen, mmmask |
Copybook di procedura standard |
cogcesan.k02, cogcesmo.k02, cogcesmo.k05 |
Chiavi secondarie cespiti |
Logica¶
Maschera con navigazione a-tm-*: anno (tm-anno), pagina iniziale (tm-pagina), tipo elaborazione (tm-tipo, P=prova / D=definitiva), intestazione azienda (tm-intesta), due righe descrizione libera (per consorzi). Conferma con F3 (a-richiesta-conferma).
- Apertura (
apri): apre i file, recupera la divisa conto (get-divisa-conto), registra/legge la configurazionearea-report-attivo(COGSC1 + RNEWCONF, gruppostampe, sottochiave = program-id). - Conferma: se
area-report-attivo = "S"chiama COGPA3 per il modello Word e l'indice tabella dettaglioTAB-DET, impostandow-eseguo-stampa-wordmdl. Poi seleziona periferica via COGS54. - Date esercizio: legge da COGTABEL (tipo 99) i parametri di inizio esercizio (
euta-ces-ini-mm/-gg) e calcolaw-data-ini-ese/w-data-fin-ese(esercizio solare o a cavallo, con DTPRG/PRGDT per il giorno precedente). - Categoria di stampa (
x-set-categoria-stampa): prima della stampa sostituisce temporaneamente in COGCESAN la categoria del cespite con la categoria di stampa configurata (euta-ces-cat-st), salvando l'originale incsa-cat-originale; ripristinata al termine conx-reset-categoria-stampa. - Elaborazione (
elabora): scorre COGCESAN (rdnxt-cogcesan) saltando i cespiti acquisiti dopo fine esercizio, venduti/rottamati negli anni precedenti o in stato sospeso. Alla rottura di categoria stampa i totali categoria (tot-categ). Per ogni cespite: stampa-riporti: somma i movimenti antecedenti l'esercizio (COGCESMO concsm-data < w-data-ini-ese) nei fondi per tipo, producendo i "Riporti" iniziali (valore storico, fondi, residuo, super ammortamento).ela-30/ela-40: scorre i movimenti dell'esercizio; l'evaluate csm-fl-1classifica ogni movimento (A=acquisto, S/N/C/I=ammortamenti, X/Y=super amm., T/B=non ded./non amm., -/Z/D/V=decrementi/dismessi/venduti, P/M=plus/minusvalenza, F=diminuzione fondo) accumulando nei campitm-*e stampando la riga di dettaglio.tot-cespite/tot-categ/tot-generale: totali per cespite, categoria e generali (valore, fondo, residuo, super ammortamento e super amm. totale).- Output:
write-rigascrive su carta; in modalita' Word i dati passano da tag XML (scrivi-tag) e dalla riga tabella (b5-riga-standard) con colonne configurabili DATA/CAUS/IMPO/VALC/FOND/PERA/FOPR/NOTE/STIL secondo la composizione COGPA3; le rotture cespite aprono/chiudono raggruppamentiROTTURA-/TAB-DET. - Chiusura (
ela-99): se Word chiude il documento XML e chiama WORDMDL "Esegui"; altrimenti COGS54 "after-print".
Nota logica di business (x-set-categoria-stampa): la riscrittura temporanea di csa-cat in anagrafica cespiti e' effetto collaterale rilevante — se la stampa si interrompe prima del reset, la categoria puo' restare quella di stampa fino alla successiva esecuzione.
CALL a sottoprogrammi¶
| Programma | Scopo |
|---|---|
| COGSC1 | Registrazione parametro configurazione area-report-attivo |
| RNEWCONF | Lettura configurazione area-report-attivo |
| COGPA3 | Recupero modello e composizione tabelle per stampa Area-Report/Word |
| WORDMDL | Generazione/stampa documento Word/XML |
| COGS54 | Selezione periferica e gestione stampa su carta |
| COGS52W | Editing/validazione anno |
| COGU10W | Editing importi in valuta |
| DTPRG / PRGDT | Conversione data ↔ progressivo giorni (calcolo fine esercizio) |
| C$JUSTIFY | Allineamento a destra colonne numeriche (runtime ACUCOBOL) |
Note¶
- Personalizzazione consorzi (
az-consorzi = "S"): intestazione estesa con dati cliente interno e pagina iniziale obbligatoria. - Le date di filtro usano
csm-data/csa-data-acqconfrontate con l'esercizio calcolato, non piu' il solo anno (modifica storica 160317). - Codice legacy con
GO TO/PERFORM ... THRU: non modello per nuovi sviluppi.