Vai al contenuto

COGC04 — Gestione articolo di chiusura Conto Economico

Intestazione

Campo Valore
Sorgente cbl/cogc04.cbl
Program-ID COGC04
Titolo Visualizzazione/rettifica articoli di chiusura
Tipo Programma interattivo con maschera e griglia (GUI AcuCOBOL)
Posizione menu Contabilita' > Bilancio > Chiusura/Riapertura Esercizio > Gestione Art.Chiusura C/Econ.

Scopo e logica generale

COGC04 permette di visualizzare e rettificare l'articolo contabile di chiusura del Conto Economico (e, in modalita' parametrica, gli articoli di chiusura/apertura patrimoniale). L'articolo e' un documento di prima nota non contabile (COGPNONC) composto da piu' righe DARE/AVERE; il programma consente di modificare le date e la testata del documento e di inserire, modificare o cancellare le singole righe di dettaglio, imponendo la quadratura DARE = AVERE prima di poter aggiornare.

L'elaborazione avviene su un file di transito indicizzato temporaneo COGTRANS (record trs-rec, layout gemello di pno-rec): all'ingresso le righe del documento vengono copiate da COGPNONC in COGTRANS, tutte le modifiche interattive lavorano sul transito, e solo alla conferma finale i dati vengono ricostruiti su COGPNONC (cancellazione e reinserimento completo del documento).

Modalita' di funzionamento

Il comportamento e' pilotato dal parametro wo-parametro (in stringhe, copybook wcont.cpy):

  • wo-parametro valorizzato (chiamata da programma esterno): tratta gli articoli di chiusura (tm-ttt = "C", file <esercizio>CHIUS.ARC) o apertura (tm-ttt = "A", file <esercizio>APERT.ARC); il file di transito e' costruito in ext-tmp-dir con nome #$75.<oper>. Titolo maschera: "Rettifica articolo di chiusura/apertura".
  • wo-parametro a spazi (avvio standalone da menu): tratta l'articolo di Conto Economico (file <esercizio>ECONO.ARC); il transito e' costruito in ext-arc-dir con nome #$75<oper>.PNO. Titolo maschera: "Rettifica articolo di chiusura".

Il file COGPNONC fisico da editare (nf-name-14) e' composto dinamicamente in base alla modalita' e all'esercizio contabile letto dalla tabella generica contabile.


Struttura e flusso

Il programma e' organizzato a paragrafi di accept collegati da go to (schema tipico delle maschere Screen Designer, con navigazione avanti/indietro tramite F2 e uscita anticipata via F3).

  1. apri: z-99-init-program, controllo abilitazioni (ctr-abil), composizione nome file di transito COGTRANS, rd-azi, open-files. Impostazione dei tasti funzione (F3 conferma/aggiorna, F4 cancella, F8 aiuto/calendario, Maiusc+F4 griglia, Maiusc+F5 esporta Excel, Invio modifica, Ctrl+A aggiungi, Ctrl+E elimina). Lettura della tabella generica contabile COGCONTA (euta-tipo = 66, tramite COGTABEL) in conta-rec, che fornisce le date limite di esercizio (conta-conchiupre9, conta-conchiuatt9, conta-dachiur).
  2. a4: reset maschera e griglia, apertura in output poi i-o di COGTRANS (con controllo "Funzione gia' in uso per l'operatore" se il file di transito e' bloccato), attivazione conferma.
  3. a-tm-ttt: (solo modalita' parametrica) scelta tipo articolo Chiusura/Apertura.
  4. Testata documento: a-tm-datart (data registrazione), a-tm-dataef (data effettiva), a-tm-data-competenza (data competenza economica). Le date sono validate contro l'esercizio (x-controlla-tm-datart verifica che la data sia nell'intervallo conta-conchiupre9 .. conta-conchiuatt9; x-controlla-tm-dataef controlla la coerenza con la chiusura precedente e la data minima movimenti).
  5. a03 / carica-trs: individuazione del documento su COGPNONC, caricamento delle righe nel transito COGTRANS con calcolo dei totali DARE (tm-totd) e AVERE (tm-tota); allineamento delle date del documento sulle righe se modificate.
  6. a-grid: gestione della griglia paginata (z-99-accept-paged-grid, con paginazione PgUp/PgDn su COGTRANS) e degli eventi utente:
  7. Invio / doppio click: modifica riga (a-operazione = "M").
  8. Ctrl+A: inserimento nuova riga (a-operazione = "I").
  9. Ctrl+E: cancellazione riga (con conferma, c-cancella).
  10. Maiusc+F4: personalizzazione colonne griglia (GRIDADMN).
  11. Maiusc+F5: esportazione Excel (z-esporta-paged-grid).
  12. F3: aggiornamento definitivo dell'articolo (aggiorna).
  13. F4: cancellazione dell'intero documento (cancella).
  14. a-riga-dettaglio e paragrafi a-tm-r-*: acquisizione dei campi della riga (conto contabile mastro/conto/sottoconto, segno DARE/AVERE, tipo operazione, data valuta, sigla e importo divisa, importo, descrizione, numero fattura, data fattura, numero IVA). In modifica il record COGTRANS viene locckato (rd-cogtrans-lk).
  15. a-fine-dettaglio: controlli finali di riga (x-controlla-dettaglio), eventuale aggiornamento dei centri di costo tramite COGS85 (per i conti a reddito), scrittura/riscrittura su COGTRANS (wr-cogtrans / rwr-cogtrans), aggiornamento dei totali e della griglia (GRIDADMN "Add-Record"/"Modify-Record").
  16. aggiorna: verifica quadratura (tm-tota = tm-totd) e abilitazione, poi cancella-dati (cancella il documento su COGPNONC e i riferimenti centri di costo via COGS85 "DEL-ALL-CC") e inserisci-dati (rilegge il transito COGTRANS e riscrive le righe su COGPNONC rinumerando la progressiva pno-pro, riportando date registrazione/effettiva/competenza e aggiornando i centri di costo via COGS85 "WRI-UPD-P").
  17. cancella: cancellazione dell'intero documento su COGPNONC (con doppia conferma).
  18. fine / z-chiudi: chiusura file, delete file cogtrans (il transito e' temporaneo e viene distrutto all'uscita), chiusura finestra, z-99-exit-program, goback.

File e tabelle principali

File logico Record Chiave Modalita' Uso
COGPNONC pno-rec pno-chia (pno-anno + pno-docum + pno-pro) I-O Prima nota non contabile: il documento (articolo di chiusura/apertura/economico) da editare
COGTRANS trs-rec trs-chia1 (trs-anno + trs-docum + trs-pro) I-O File indicizzato temporaneo di transito, layout gemello di pno-rec; dichiarato manualmente nel sorgente (SELECT/FD inline)
COGPNCON pco-rec pco-chia (mastro/conto/sottoconto) Input Piano dei conti: validazione conto e recupero descrizione, flag pco-reddito, pco-tipoanagr
COGGEANA ana-rec ana-chia (ana-tipo + ana-cod) Input Anagrafiche generiche: descrizione del sottoconto quando il conto e' anagrafico (pco-tipoanagr)
COGTABEL euta-rec euta-key (euta-tipo + euta-cod/codr) Input Tabelle generiche: tipo 66 = dati generici contabilita' (conta-rec), tipo 65 = tipi operazione (descrizione in euta-descr1)
FEURTAB (cogfiles) Input Tabella file Eurosystem

La testata del documento (tab-maschera -> tm-dati) contiene esercizio, date registrazione/effettiva/competenza, divisa, totali tm-totd/tm-tota e la tabella righe tm-righe (occurs k-max-ele-tab = 900). Ogni riga (tm-ele) replica i campi di pno-rec/trs-rec piu' i campi appoggio descrizione conto (tm-r-con-des), reddito (tm-r-con-reddito) e tipo anagrafica (tm-r-con-tipoanagr).


Copybook principali

Screen Designer (cbl/screens/)

Copybook Contenuto
cogc04-01.scr Maschera principale (screen section)
cogc04.select SELECT dei file gestiti da Screens
cogc04.fd FD dei file gestiti da Screens
cogc04.wrk Working storage della maschera
cogc04.prc Procedure division della maschera (routine z-s52-*, z-s60-*, z-s67-*, z-u10-*, x-controlla-*, gestione griglia)
cogc04.decla Declaratives

Strutture dati

Copybook Contenuto
cogfiles.cpy FD feurtab
cogpnonc.cpy Record prima nota non contabile (pno-rec)
cogpncon.cpy Record piano dei conti (pco-rec)
coggeana.cpy Record anagrafiche generiche (ana-rec)
cogtabel.cpy Record tabelle generiche (euta-rec)
cogconta.cpy Tabella dati generici contabili (conta-rec): date esercizio, chiusura precedente/attuale, data minima movimenti
cogtrans.k01 Routine di I/O del file di transito COGTRANS (rd-, rdnxt-, wr-, rwr-, del-, st-*)
cogazien.cpy Dati azienda (az-ccopr = gestione centri di costo)
wgrid.cpy Working storage griglia
wgrave.cpy / wnscr.cpy / wopenf.cpy / wstato.cpy Working storage comuni (errori gravi, screen, apertura, stato file)

Utility e interfacce

Copybook Contenuto
utilgdad.cpy Interfaccia GRIDADMN (util-gdad) per gestione griglia
utile65.cpy Interfaccia COGE65 (util-e65) ricerca tipo operazione
utils52.cpy Interfaccia COGS52 (util-s52) gestione/validazione date e calendario
utils67.cpy Interfaccia COGS67 (util-s67) gestione conto contabile
utils85.cpy Interfaccia COGS85 (util-s85) gestione centri di costo
utilu10.cpy Interfaccia COGU10W (util-u10) editazione/arrotondamento importi
dtab.cpy / fscrol2.cpy / utilpggr.cpy Utility tabelle, scroll e griglia paginata

Procedure incluse (fine procedure division)

grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy, poi cogc04.prc, dtab.cpy, fscrol2.cpy, utilpggr.cpy e infine cogtrans.k01.

Linkage section

Copybook Contenuto
wcont.cpy Struttura stringhe (contesto chiamante: wo-oper, wo-parametro)
wcont1.cpy Struttura contesto aggiuntivo

Sottoprogrammi chiamati (CALL)

Programma Interfaccia Scopo
GRIDADMN util-gdad Gestione della griglia paginata (Prepara, Svuota, Add-Record, Modify-Record) e personalizzazione colonne (Maiusc+F4)
COGE65 util-e65 Ricerca/aiuto del codice tipo operazione (F8 sul campo Tipo operazione); il codice scelto e' riportato in tm-r-to. Cancellato dopo l'uso (cancel "COGE65")
COGS85 util-s85 Gestione dei centri di costo collegati alle righe a reddito (az-ccopr = "S" e conto con pco-reddito = "R"): operazioni DISP-UPD-P, SERC-UPD-P, WRI-UPD-P, DEL-ALL-CC

Le funzioni di validazione date (COGS52), conto (COGS67), segno (COGS60) e importi (COGU10W) sono invocate indirettamente tramite le routine generate nei copybook cogc04.prc / utils*.cpy (perform z-s52-*, z-s67-*, z-s60-*, z-u10-*).


Note

  • Il file di transito COGTRANS e' temporaneo: viene aperto in output per verificarne il non-uso concorrente, poi in i-o, e infine cancellato (delete file) all'uscita del programma. Non e' un archivio persistente e non e' gestito da Screen Designer: SELECT e FD sono dichiarati manualmente nel sorgente, con layout identico a pno-rec.
  • L'aggiornamento e' consentito solo se l'articolo quadra (tm-tota = tm-totd): in caso contrario viene mostrato "Articolo non quadrato, impossibile registrare".
  • La conferma finale ricostruisce integralmente il documento su COGPNONC (cancellazione totale + reinserimento con rinumerazione della progressiva pno-pro), quindi al termine viene ricordato all'operatore di "Rettificare eventuali movim. IVA".
  • La gestione dei centri di costo e' condizionata dal flag azienda az-ccopr: se attivo, per i conti a reddito i riferimenti centri di costo sono mantenuti allineati tramite COGS85.
  • Le abilitazioni operative (w-abi-ins, w-abi-agg, w-abi-del) sono impostate da ctr-abil e controllate su ogni operazione di inserimento/modifica/cancellazione.
  • La data di competenza economica del documento (tm-data-competenza -> pno-data-econ), obbligatoria, e' gestita dalla revisione del 06/09 (marcatore 060919 nel sorgente) sia in caricamento sia in scrittura delle righe.