Stampa Bilancio di Verifica (COG008)¶
Identificazione¶
- Programma: COG008
- Autore: Eurosystem (conv. Win: Gianluca 22/09/2004)
- Area: Contabilita' / Prima Nota / Stampe + Bilancio
- Descrizione: Stampa bilancio di verifica con supporto multi-livello, multi-valuta, export Excel e riclassificazione CEE
- Righe: 8.829
- Menu: Contabilita' > Prima Nota > Stampe > Bilancio Verifica; Contabilita' > Bilancio > Chiusura > Stampa Bilancio
Funzionalita' principale¶
COG008 e' il generatore del bilancio di verifica (trial balance). Legge i saldi contabili, li aggrega a tre livelli gerarchici (mastro → conto → sottoconto), e produce report in diversi formati. E' uno dei programmi piu' ricchi di opzioni dell'area contabile.
Formati di output¶
| Formato | File | Descrizione |
|---|---|---|
| Stampa testo | FEURLAV (spool) | Report formattato per stampante |
| CSV/Excel | fileasc2 | Export con separatore virgola |
| XML/Word | via WORDMDL | Documento professionale formattato |
| Riclass. CEE | via COGH06 | Bilancio riclassificato IV Direttiva |
Parametri utente¶
L'interfaccia presenta una form con numerose opzioni:
Parametri principali¶
| Campo | Descrizione | Valori |
|---|---|---|
| tm-esprec | Esercizio precedente | S/N |
| tm-eser-cont | Esercizi contabili | YYYY/YYYY |
| tm-escl | Escludi doc. di chiusura | S/N |
| tm-escl-ndoc1/2/4 | Numeri documento da escludere | Numerico |
| tm-bil-parz | Bilancio parziale (per periodo) | S/N |
| tm-da-data / tm-a-data | Intervallo date | YYYYMMDD |
| tm-tipobil | Livello di dettaglio | M=Mastro, C=Conto, S=Sottoconto |
| tm-divisa | Divisa di stampa | Codice 2 car. |
Opzioni saldi e filtri¶
| Campo | Descrizione | Valori |
|---|---|---|
| tm-saldi-i-patr | Includi saldi iniziali patrimoniali | S/N |
| tm-saldi-i-redd | Includi saldi iniziali di reddito | S/N |
| tm-data-reg / tm-data-econ | Usa data registrazione / economica | S/N |
| tm-anag-sino | Includi sottoconti anagrafici (cli/for) | S/N |
| tm-escludi-conti-patr | Escludi conti patrimoniali | S/N |
| tm-ws-saldo-0 | Includi conti a saldo zero | S/N |
| tm-prov | Includi movimenti provvisori | S/N |
Opzioni output¶
| Campo | Descrizione | Valori |
|---|---|---|
| tm-risput | Calcola utile/perdita | S/N |
| tm-risp | Confronto con budget preventivo | S/N |
| tm-excel | Export Excel | S/N |
| tm-ricla-iv | Riclassificazione IV Direttiva CEE | S/N |
| tm-wmod-ricla | Modello riclassificazione | Numerico |
| tm-st-libro-inven | Stampa libro inventario | S/N |
| tm-s-conti-contab | Stampa conti contabili | S/N |
| tm-modello | Modello output (per WORDMDL) | Numerico |
Flusso operativo¶
1. Inizializzazione (apri)¶
ctr-abil: Verifica permessiCOGSC1: Caricamento configurazione stampax99-confi: Lettura parametri azienda- Apertura file e preparazione form
2. Acquisizione parametri¶
Navigazione sequenziale dei campi form con validazione:
- Esercizio e date
- Opzioni di filtro
- Livello di dettaglio
- Formato output
- F3 per conferma ed elaborazione
3. Preparazione dati¶
Modalita' standard (elabora01-normale)¶
- Legge COGTRANS (file transazioni indicizzato) dalla chiave minima
- Per ogni conto: accumula dare, avere, saldo iniziale
- Filtra per livello richiesto (M/C/S)
- Converte divisa se diversa da quella richiesta (via COGU10W)
Modalita' bilancio parziale (parz-00-new)¶
- Filtra movimenti nell'intervallo date tm-da-data / tm-a-data
- Usa data registrazione o economica secondo configurazione
Modalita' riclassificazione CEE¶
- Ricostruisce file lavsal con saldi aggregati per conto
- Passa a COGH06 che applica il modello di riclassificazione IV Direttiva
4. Calcolo saldi (ciclo principale)¶
Per ogni conto letto da COGTRANS:
Saldo iniziale:
Se positivo → aggiunto a Dare
Se negativo → aggiunto ad Avere (valore assoluto)
Movimenti:
trs-dare → accumulato in totale dare
trs-avere → accumulato in totale avere
Saldo netto:
saldox = dare - avere + saldo_iniziale
Se saldox > 0 → segno "D" (dare)
Se saldox < 0 → segno "A" (avere)
5. Raggruppamento gerarchico a 3 livelli¶
| Livello | Totali | Paragrafo rottura |
|---|---|---|
| Sottoconto | Riga dettaglio | (scritto direttamente) |
| Conto | tog-iniziale, togd, toga | rotconto |
| Mastro | tom-iniziale, tomd, toma | rotgruppo |
| Totale generale | togg-iniziale, toggd, togga | (a fine elaborazione) |
Ad ogni cambio di mastro o conto, viene stampata la riga di subtotale del livello precedente con:
- Saldo iniziale con segno D/A
- Totale dare
- Totale avere
- Saldo netto con segno
6. Confronto con preventivo (opzionale)¶
Se tm-risp = "S":
- Per ogni conto: confronta saldo effettivo con
trs-bilprev(budget preventivo) - Calcola scostamento percentuale:
(saldo * 100 / bilprev) - 100 - Riportato sia nei subtotali conto che mastro
7. Determinazione utile/perdita (opzionale)¶
Se tm-risput = "S":
- Accumula separatamente i conti patrimoniali e di reddito
- Conti di reddito:
bil-dare > bil-avere→ Perdita, altrimenti → Utile - Riporta anche saldo avere clienti e saldo dare fornitori
8. Output¶
Formato stampa (rig5)¶
| Mastro | Conto | Sconto | Descrizione | Saldo Iniz. | D/A | Dare | Avere | Saldo-D | Saldo-A |
Intestazione: "STAMPA BILANCIO DI VERIFICA AL dd/mm/yyyy" (o DAL...AL per bilancio parziale)
Formato Excel (fileasc2 — as2-rec)¶
Campi separati da virgola:
- Riferimento piano conti, descrizione, dare, avere, saldo, segno, saldo iniziale
Formato XML/Word (WORDMDL)¶
- Tag strutturati: R1-DATASIS, R1-TIT, TAB-DET, RCR-, RTO-
- Supporto logo aziendale
- Metadati libro inventario (se richiesto)
9. Verifica quadratura finale¶
- Calcola totale generale dare e avere
- Se non quadra: segnala conti senza collegamento al piano dei conti nel file errori (filseq)
File principali¶
| File | Prefisso | Operazioni | Descrizione |
|---|---|---|---|
| COGTRANS | trs- | Read (indexed) | Transazioni/saldi (file di lavoro) |
| COGSLPCO | con- | Read | Saldi piano dei conti |
| COGPNCON | pco- | Read | Piano dei conti (descrizioni, flag reddito) |
| COGTABEL | euta- | Read | Tabelle di sistema |
| COGCOATT | att- | Read | Archivio contabilizzato (per bilancio parziale) |
| FEURTAB | eur- | Read | Tabella cambi |
| LAVSAL | lav- | Write/Read (indexed) | File lavoro per riclassificazione CEE |
| fileasc | asc- | Write (seq) | Output testo dettaglio |
| fileasc2 | as2- | Write (seq) | Output CSV/Excel |
| filseq | seq- | Write (seq) | Conti non collegati (errori) |
Catena di chiamata¶
| Programma | Righe | Funzione |
|---|---|---|
| COGSC1 | - | Configurazione stampa |
| COGS52W | 837 | Formattazione date (7 chiamate) |
| COGS54 | - | Gestione spool stampante |
| COGE22 | 1.156 | Lookup cambio divise |
| COGPA3 | - | Parametri di stampa |
| COGQ38 | - | Lookup/filtro documenti |
| COGH06 | - | Riclassificazione IV Direttiva CEE |
| COGU10W | 1.193 | Conversione valuta |
| WORDMDL | - | Generazione XML/Word (20+ chiamate) |
| GRIDTOXS | - | Conversione griglia → Excel |
| OPENFILE | - | Apertura file (utility) |
| RNEWCONF | 620 | Lettura configurazione |
| COPIAF | 1.898 | Conversione percorsi file (server→client) |
Note tecniche¶
Copybook principali¶
cog008.wrk: Working storagecog008.select: SELECT filecog008.fd: File descriptioncog008-01.scr: Screen definition (form parametri)
Struttura record COGTRANS (file di lavoro)¶
trs-chia1: mastro(2) + conto(2) + sconto(6)
trs-dare: importo dare (12.6)
trs-avere: importo avere (12.6)
trs-bilprev: saldo preventivo (signed)
trs-saldo-iniziale: saldo apertura (signed)
trs-tipo: 'P' (patrimoniale) / 'R' (reddito)
Flag tipo conto¶
P= Patrimoniale (stato patrimoniale)R= Reddito (conto economico)
Questo flag determina il trattamento dei saldi iniziali e la separazione tra bilancio patrimoniale e conto economico nella determinazione utile/perdita.
Paragrafi principali¶
apri: Inizializzazionea4: Preparazione forma-tm-*: Accettazione singoli campielabora01: Inizio elaborazioneelabora01-normale: Elaborazione standardelabora10/elabora12: Dettaglio per contoparz-00-new: Elaborazione bilancio parzialerotgruppothruex-rotgruppo: Subtotale mastrorotcontothruex-rotconto: Subtotale contoscrivi-tag: Scrittura tag XML per WORDMDLfine/z-chiudi: Chiusura
Posizioni chiave¶
- Riga 7: Descrizione programma
- Riga 765: Main section
- Riga ~2600: Inizio elaborazione
- Riga ~3277: Ciclo principale lettura transazioni
- Riga ~3483: Calcolo saldo
- Riga ~4389: Determinazione utile/perdita
- Riga ~7938: Rottura mastro (subtotale)
- Riga ~8095: Rottura conto (subtotale)