COGE72 - Gestione Piano dei Conti¶
Sorgente: cbl/coge72.cbl | Program-ID: COGE72 | Tipo: Programma interattivo (standalone, GUI)
Menu: Contabilita' > Archivi & Tabelle > Piano Conti
Scopo¶
Gestione anagrafica del piano dei conti (tabella COGPNCON) su tre livelli gerarchici: mastro (2 cifre), conto (2 cifre) e sottoconto (6 cifre). Permette inserimento, variazione e cancellazione di ciascun nodo, con la relativa descrizione e gli attributi contabili: reddito/patrimoniale, tipologia mastro (apertura/patrimoniale/ordine), tipo anagrafico (clienti/fornitori), riepiloghi (mastro/conto/sottoconto), cespite e categoria, ratei, risconti, protezione, conto servizio, destinazione IVA e controconto. Puo' essere lanciato in modalita' chiamata da altri programmi (link linke72.cpy, operazioni "gest"/"free"/"new") restituendo la chiave del conto selezionato. Gestisce inoltre il raccordo con un codice conto host esterno (COGPCRAC) quando la configurazione lo richiede.
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| FEURTAB | Indexed | Input | Tabella nomi file |
| COGTABEL | Indexed | I-O | Tabella generica contabilita' (tipo 99 categorie cespiti, tipo 85 conti servizio, tipo "FQ" destinazione IVA, tipo 70/CSF2 cash flow) |
| COGGEANA | Indexed | Input | Anagrafica clienti/fornitori (lettura per sottoconti anagrafici) |
| COGPNCON | Indexed | I-O | Piano dei conti (archivio principale gestito) |
| COGSLPCO | Indexed | Input | Saldi piano dei conti (controllo pre-cancellazione) |
| COGPERCC | Indexed | I-O | Ripartizione conti su centri di costo/profitto (cancellazione in cascata) |
| COGPCRAC | Indexed | I-O | Raccordo conto-codice host esterno (accesso via chiave primaria e k02) |
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
| feurtab.fd | SELECT tabella nomi file |
| cogfiles.cpy | FD comune tabella nomi file |
| coge72.select | SELECT dei file gestiti (genera COGTABEL, COGGEANA, COGPNCON, COGSLPCO, COGPERCC, COGPCRAC) |
| coge72.fd | FD dei file gestiti dal programma |
| coge72.wrk | Working-storage generato da Screens |
| linke72.cpy | Struttura di linkage/chiamata (replacing e72/util-e72) |
| wgrave.cpy | Gestione errori gravi |
| wnscr.cpy | Dati schermo |
| wopenf.cpy | Apertura file |
| wstato.cpy | Stato I/O |
| cogazien.cpy | Dati azienda (az-ges-csf, az-ccopr, az-consorzi, ecc.) |
| utilncnf.cpy | Linkage per RNEWCONF (lettura configurazioni) |
| utils45.cpy | Linkage COGS45 (aggiornamento descrizioni conti) |
| utilw14.cpy | Linkage WIN014 (aiuto/ricerca piano conti) |
| utilw59.cpy | Linkage WIN059 (ricerca su descrizione) |
| utilw114.cpy | Linkage WIN114 (ricerca categorie) |
| UTILf11.CPY | Linkage COGF11 (conti servizio) |
| utilcogy69.cpy | Linkage COGY69 (destinazione IVA) |
| wcont.cpy | Linkage stringhe comuni |
| utile72.cpy | Area di linkage del programma (I/O verso chiamanti) |
| utilf91.cpy | Linkage COGF91 (cash flow) |
| utilk73.cpy | Linkage COGK73 (ripartizione centri di costo) |
| utilh02.cpy | Linkage COGH02 (riclassificazione conto) |
| wcont1.cpy | Linkage area utente 2 |
| coge72-01.scr | Screen section |
| coge72.decla | Declaratives |
| stato.cpy / stato1.cpy | Paragrafi controllo stato I/O |
| winmsg.cpy | Messaggi a video |
| grave.cpy | Paragrafi errori gravi |
| opengen.cpy | Paragrafi apertura file |
| mmmask.cpy | Paragrafi init/exit programma (z-99-init-program / z-99-exit-program) |
| coge72.prc | Paragrafi generati da Screens (accessi ai file, controlli video) |
| cogpcrac.k02 | Accesso COGPCRAC per chiave secondaria (raccordo per mastro/conto/sottoconto) |
| sendw14.cpy | Paragrafo di chiamata a WIN014 |
Logica di elaborazione¶
- Inizializzazione:
apriimposta l'help e l'area di linkage, verifica abilitazioni (ctr-abil), apre i file, legge i dati azienda (rd-azi) e carica la configurazionegestione-codice-pdc-host(gruppocontabil) via RNEWCONF inx99-load-config. Definisce i tasti funzione disponibili (F1 configura, F3 aggiorna, F4 cancella, F6 centri di costo, F8 aiuto, F9 ricerca avanzata) e crea il pulsante custom "Riclassificazione conto" (F7). Costruisce i controlli della maschera (combo tramite COGS60). - Modalita' chiamata: se
w-dc-called = COGE72, in base aw-dc-ope("gest", "free", "new") precarica mastro/conto/sottoconto dal chiamante e li valida, restituendo poi la chiave inw-dc-out-pco. - Input chiave gerarchica: accept in sequenza di mastro (
a-tm-mastro), descrizione mastro, conto (a-tm-conto) e sottoconto (a-tm-sconto), ciascuno con ricerca F8 (WIN014) e navigazione F2 all'indietro. Per il mastro/conto viene letta e mostrata la descrizione da COGPNCON; per i sottoconti di conti anagrafici la descrizione arriva da COGGEANA. - Lettura record: in
a-inizio-dativiene letto il record COGPNCON per la chiave completa; se esiste si imposta modalita' variazione (fl-ins-var = "V"), altrimenti inserimento ("I"). Le abilitazioni dei campi dipendono dal livello (mastro/conto/sottoconto) tramite i paragrafiz-cambia-tm-*. - Input attributi: accept dei campi descrizione, cespite, categoria (con ricerca WIN114 e validazione su COGTABEL tipo 99), ratei, risconti, protetto, servizio (ricerca COGF11, validazione su COGTABEL tipo 85 se azienda a consorzi), destinazione IVA (ricerca COGY69, validazione su COGTABEL tipo "FQ"), reddito, tipologia mastro (
tm-pco-ap), tipo anagrafico, riepiloghi mastro/conto/sottoconto, codice host (tm-conto-ext, se configurazione host attiva) e controconto. Ogni campo ha un paragrafox-controlla-tm-*che imposta esito ed evidenzia in colore di errore. - Conferma: in
a-poscursi attende l'operazione.x-imposta-confermaesegue tutti i controlli campo per abilitare l'aggiornamento (F3); l'evento F3/F4 e' intercettato anche daz-99-exception-form. - Variazione (
variazione): riletto il record COGPNCON, aggiornati tutti gli attributi e riscritto (rwr-cogpncon). Se la descrizione e' cambiata, notifica a COGS45. Aggiorna il raccordo host (aggiorna-codice-host) segestione-codice-pdc-host = "S". - Cancellazione (
cancella):ctrl-cancverifica assenza di saldi (COGSLPCO) e di conti figli (COGPNCON) prima di consentire la cancellazione; se ammessa,del-cogpncon, cancellazione raccordo host, notifica descrizione a COGS45, rimozione eventuale chiave cash flow su COGTABEL (tipo 70/CSF2, seaz-ges-csf = "S") e cancellazione ripartizioni centri di costo (canc-perccsu COGPERCC, seaz-ccopr = "S"). - Inserimento (
inserimento): scrittura nuovo record COGPNCON (wr-cogpncon), aggiornamento raccordo host, notifica a COGS45, eventuale lancio cash flow (COGF91) per conti patrimoniali seaz-ges-csf = "S", lancio ripartizione centri di costo (lancia-perc-> COGK73) seaz-ccopr = "S", ed eventuale proposta di riclassificazione (COGH02) per conti anagrafici/sottoconti. - Funzioni accessorie: F6 lancia la gestione centri di costo (COGK73); F7 (pulsante custom "Riclassificazione conto") lancia COGH02 per conti in variazione.
- Chiusura (
fine/z-chiudi): chiusura file e finestra, restituzione dell'areautil-e72al chiamante,exit program.
Chiamate a sottoprogrammi¶
| Programma | Scopo |
|---|---|
| WIN014 | Aiuto/ricerca piano dei conti (F8, tramite send-w14) |
| WIN059 | Ricerca conto per descrizione mastro (F9) |
| WIN114 | Ricerca categorie cespiti (F8 su categoria) |
| COGF11 | Ricerca conto servizio (F8 su servizio) |
| COGY69 | Ricerca tipo destinazione IVA (F8 su destinazione IVA) |
| COGS45 | Aggiornamento/notifica descrizioni conti (inserimento/variazione/cancellazione) |
| COGF91 | Gestione cash flow per conti patrimoniali (se azienda gestisce CSF) |
| COGK73 | Ripartizione conto sui centri di costo/profitto (F6 e in inserimento se azienda a centri di costo) |
| COGH02 | Riclassificazione conto (F7 e proposta post-inserimento) |
| RNEWCONF | Lettura configurazione gestione-codice-pdc-host |
Storico modifiche¶
Il sorgente riporta marcatori di data in colonna 1-6 (non *>DOC:) che tracciano le principali estensioni:
- 181116: aggiunta gestione tipo destinazione IVA (
tm-dest-iva, validazione COGTABEL tipo "FQ"). - 221223: aggiunta tipologia mastro (
tm-pco-ap: apertura/patrimoniale/ordine e reddito, con controlli di coerenza rispetto a reddito/patrimoniale). - 240518: aggiunta gestione codice raccordo host (
tm-conto-ext, tabella COGPCRAC) pilotata dalla configurazionegestione-codice-pdc-host.