COGE61 -- Saldi Giornalieri Schede¶
Sorgente: cbl/coge61.cbl | Program-ID: COGE61 | Tipo: Stampa
Menu: Contabilita' > Prima Nota > Stampe > Saldi Giornalieri Schede
Scopo¶
Stampa i saldi giornalieri per un singolo conto contabile in un intervallo di date. I movimenti vengono letti da COGCOATT (contabilizzato) e/o COGPNONC (non contabilizzato), scritti su un file transito COGTRANS ordinato per data/documento/progressivo, e poi stampati con dettaglio per giorno e saldi progressivi. Distingue tra conti di reddito e patrimoniali per il calcolo del saldo iniziale.
Struttura della maschera¶
Parametri di selezione¶
| Campo | Variabile | Descrizione |
|---|---|---|
| Esercizio anno precedente | tm-ese |
"S" = esercizio precedente, "N" = anno attuale |
| Movimenti non contabilizzati | tm-contab |
"S" = includi non contabilizzati, "N" = solo contabilizzati |
| P.Nota Provvisoria | tm-prov |
"S" = includi provvisori (visibile solo se az-ges-ip = "S") |
| Sequenza 8-6-9 | tm-869 |
"S" = attiva (F8/F6/F9 dalla maschera P.Nota Provvisoria) |
| Piano dei Conti | tm-pc (mas/con/sot) |
Conto contabile da stampare. F9 ricerca avanzata. |
| Da data | tm-data-da |
Data inizio periodo (formato AAAAMMGG) |
| A data | tm-data-a |
Data fine periodo (formato AAAAMMGG) |
Logica di elaborazione¶
Flusso principale¶
apri: inizializzazione, lettura azienda, apertura file, creazione COGTRANS temporaneo, lettura tabella generica contabilita' (COGTABEL tipo 66, recordconta-rec), display mascheraa4: reinizializzazione parametri (default:tm-ese = "N",tm-contab = "N",tm-prov = "S")- Accept parametri:
a-tm-ese->a-tm-contab->a-tm-prov->a-tm-pc(piano dei conti, tramitez-s67-tm-pc) ->a-tm-data-da->a-tm-data-a a-riga-fine: validazione, configurazione COGS54 (stampa, 132 colonne), apertura COGCOATT (anno attuale o precedente tramiteopen-pn-contabilizzata), avvio elaborazione
Fase 1: Caricamento dati su COGTRANS¶
Scansione sequenziale dei file contabili, filtrando per il conto selezionato (con logica multi-livello: mastro, conto, sottoconto):
- Da COGCOATT (
cr-00-loop): lettura movimenti contabilizzati tramite chiave secondaria (chia2= mastro/conto/sconto/datamov/docum), conversione divisa tramite COGU10, scrittura su COGTRANS contrs-tipo-file = "C" - Da COGPNONC (
cr-30->cr-30-loop): setm-contab = "N", lettura movimenti non contabilizzati con stessa logica, con filtraggio P.Nota provvisoria (pno-fl-pro), scrittura su COGTRANS contrs-tipo-file = "N"
Fase 2: Stampa (a030 -> stampa loop)¶
Lettura sequenziale di COGTRANS e generazione stampa:
- Lettura piano dei conti (
rd-cogpncon): per determinare se il conto e' di reddito (pco-reddito = "R") o patrimoniale - Filtro per competenza:
- Conti di reddito: solo movimenti nel periodo dell'esercizio corrente
- Conti patrimoniali: inclusi movimenti precedenti per saldo iniziale
- Intestazione conto (
a031): alla prima occorrenza del conto, legge descrizioni da COGPNCON e COGGEANA (se anagrafico) - Rotazione data (
a037): al cambio data, stampa subtotali giornalieri (rotconto) - Stampa movimento: data, documento, fattura, protocollo, causale, descrizione, importo dare/avere
- Rotazione conto (
rotconto): stampa saldo finale del conto
Layout stampa (132 colonne)¶
| Riga | Contenuto |
|---|---|
rig1 |
Intestazione: "SALDI GIORNALIERI PER SINGOLO CONTO", data stampa, periodo, pagina |
rig2 |
Codice e descrizione conto |
rig3 |
Header colonne: DATA, DOCUM., N.FATT, DEL, PROT., DESCRIZIONE CAUSALE, DESCRIZIONE VARIABILE, DARE, AVERE |
rig5 |
Riga movimento: data (gg/mm/aaaa), documento, provvisorio, n.fattura, data fattura, protocollo, causale, descrizione, dare, avere |
rigsot |
Separatore (asterischi) |
File utilizzati¶
| File | Accesso | Scopo |
|---|---|---|
| COGCOATT | Input | Movimenti contabilizzati (anno attuale o precedente, apertura dinamica tramite open-pn-contabilizzata) |
| COGPNONC | Input | Prima nota non contabilizzata |
| COGPNCON | Lettura | Piano dei conti (descrizione, tipo reddito/patrimoniale, tipo anagrafico) |
| COGGEANA | Lettura | Anagrafica generale (nome per conti con tipo anagrafico) |
| COGTABEL | Lettura | Tabella generica contabilita' (tipo 66 -- esercizio, date chiusura) |
| COGTRANS | I-O | File transito temporaneo (in ext-tmp-dir, nome #$COGE61.{operatore}) |
| FLSTA | Output | File spool stampa |
Struttura COGTRANS¶
trs-chia1:
trs-datamov pic 9(08) Data movimento (AAAAMMGG)
trs-mova pic 9(04) Anno
trs-movm pic 9(02) Mese
trs-movg pic 9(02) Giorno
trs-docum pic 9(06) Numero documento
trs-pro pic 9(04) Progressivo
trs-con:
trs-mastro pic 9(02) Mastro
trs-conto pic 9(02) Conto
trs-sconto pic 9(06) Sottoconto
trs-dataeff pic 9(08) Data effettiva
trs-to pic 9(03) Tipo operazione
trs-des pic x(40) Descrizione
trs-segno pic x(01) Segno (D/A)
trs-datafat pic 9(08) Data fattura
trs-nfatt pic x(08) Numero fattura
trs-niva pic 9(08) Numero IVA
trs-valuta pic 9(08) Data valuta
trs-importo pic 9(12)v9(06) Importo
trs-currency pic x(02) Divisa
trs-tipo-file pic x(01) "C" contabilizzato / "N" non contabilizzato
trs-prov pic x(01) Flag provvisorio
Programmi chiamati¶
| Programma | Scopo |
|---|---|
| COGS52W | Calendario (date picker, F8) |
| COGS54 | Gestione stampa/spooler (132 colonne) |
| COGU10W | Conversione divisa (cambio importi in divisa di conto) |
Copybook principali¶
coge61.wrk, coge61.select, coge61.fd, coge61.decla, coge61-01.scr, k-u10.cpy, cogcoatt.cpy, cogconta.cpy, cogazien.cpy, flsta.cpy, utils52.cpy, utils54.cpy, utils67.cpy, utilu10.cpy
Note¶
- La variabile
fl-pno-procontrolla il filtro sulla Prima Nota provvisoria:" "= escludi provvisori,"P"= includi provvisori,"O"= includi anche sequenza 8-6-9. - I movimenti con data effettiva (
trs-dataeff > 0) vengono riattribuiti alla data effettiva per il calcolo del saldo. Questo gestisce il caso di movimenti di competenza di un periodo diverso dalla data di registrazione. - Il saldo iniziale dei conti patrimoniali viene calcolato considerando tutti i movimenti precedenti alla data di partenza.
- Il programma supporta la selezione a livello di mastro (sottoconto e conto a zero): in questo caso stampa tutti i conti del mastro selezionato.