COGK13 — Rilevazione e registrazione Ratei¶
Sorgente: cbl/cogk13.cbl | Tipo: Programma interattivo a griglia con elaborazione contabile | Program-ID: cogk13
Menu: Contabilita' > Bilancio > Ratei/Risconti [Pre-Chiusura:Ratei] ; Contabilita' > Bilancio > Ratei/Risconti infrannuali [Rilevazione Ratei Infrannuali]
Scopo¶
COGK13 gestisce i ratei in fase di pre-chiusura di bilancio (e, in variante, in modalita' infrannuale). Un rateo rappresenta la quota di un costo/ricavo di competenza dell'esercizio in chiusura ma non ancora registrato contabilmente (o registrato con competenza che matura oltre la data di fine esercizio): il programma individua i documenti di prima nota interessati, calcola la quota di competenza, la mostra in una griglia di controllo e — a conferma — genera le scritture contabili di rilevazione con relativa contropartita.
Fa coppia complementare con COGK12, che tratta i risconti: COGK13 lavora sui record COGRISCO di tipo "R" (ratei), COGK12 sui record di tipo "T" (risconti). La struttura del programma e delle tabelle e' pressoche' identica; la differenza sostanziale e' il tipo record trattato, i conti di contropartita usati (ratei anziche' risconti) e, in modalita' infrannuale, la logica aggiuntiva sui DDT non fatturati.
Il comportamento e' pilotato dal parametro di chiamata wo-parametro:
- primo carattere "A" = fase di rilevazione ratei (pre-chiusura);
- primo carattere "B" = fase di ripristino/post-apertura nel nuovo esercizio;
- secondo carattere "I" = variante infrannuale.
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
| COGRISCO | cogrisco.cpy / .fd / .k02 |
File di lavoro. Tipo record rsc-tipo-rec = "R" (ratei). Stessa struttura descritta in COGK12: conto, documento, importi/competenze, segno, fase, rsc-fl-ddt-no-fatt (marca i record derivati da DDT non fatturati) |
| COGPNONC | cogpnonc.cpy / .fd |
Prima nota non contabilizzata: sorgente dei movimenti e destinazione delle scritture generate |
| COGCOATT | cogcoatt.cpy / .fd / .k01 |
Prima nota contabilizzata anno attivo (sorgente in carica-tab) |
| COGCOPRE | cogcopre.cpy / .fd / .k01 |
Prima nota contabilizzata anno precedente (controlla-doc-presente) |
| COGPNCON | cogpncon.cpy / .fd |
Piano dei conti: flag pco-ratei che marca il conto come soggetto a rateo, descrizione conto |
| COGMOVCC | cogmovcc.cpy / .fd / .k01-agg |
Movimenti contab. analitica (aperto i-o solo se az-ccopr = "S") |
| COGTABEL | cogtabel.cpy |
Tipo 66 (esercizio contabile), tipo 29 (conti/operazioni contropartita ratei: euta-29-cc-rat-att/op-rat-att/cc-rat-ps/op-rat-ps), tipo 15 (causali documento), tipo 16 (mastro/conto ricavo per i DDT non fatturati) |
| COGTESBO | cogtesbo.cpy / .fd / .k02 |
Testate bolle/DDT: scansione per data (.k02) nella logica DDT non fatturati infrannuale |
| COGRACCO | cogracco.cpy / .fd / .k02 |
Raccordo bolle/fatture: usato per escludere i DDT gia' fatturati |
| COGTESAP | cogtesap.cpy / .fd |
Dati aggiuntivi testata (tipo fatturazione, date competenza contabile tsa-data-comp-da/tsa-data-comp-a) |
| COGMOMAG | cogmomag.cpy / .fd |
Movimenti di magazzino della bolla (valore, competenze) per il calcolo dei DDT non fatturati |
| COGARIVA | cogariva.cpy / .fd |
Movimenti IVA (personalizzazione Cortesi e recupero cliente/fornitore) |
| COGGEANA | coggeana.cpy / .fd |
Anagrafica: ragione sociale |
Flusso principale¶
apri— inizializzazione, apertura file, lettura configurazioni (x99-src-cfg), apertura COGCOATT/COGCOPRE, lettura divisa conto.carica-dati-iniziali— descrizione elaborazione e date esercizio da COGTABEL tipo 66.- Accept parametri:
a-tm-data-fine,a-tm-data-init,a-tm-data-regis-contabile,a-tm-prove — per la modalita' infrannuale con DDT non fatturati — le datea-tm-da-data/a-tm-a-data(periodo ricerca DDT) ea-tm-da-data-cc/a-tm-a-data-cc(periodo competenza contabile), con relativi controlli. carica-tab— (solo sewo-parametro (1:1) = "A") previapulizia-cogrisco, scorre COGCOATT (carica-tab-10) e COGPNONC (carica-tab-30) richiamandocarica-risco, poi — se applicabile —carica-tab-40.carica-risco— logica di rilevazione ratei: verifica conto flaggato rateo (pco-ratei = "S"), che il documento maturi competenza oltre la data di fine esercizio, calcola i giorni (calc-tot-giorni/ DTPRG), ripartisce l'importo e scrive il record COGRISCO tipo "R". Con contab. analitica attiva replica su COGMOVCC (carica-risco-cc).carica-tab-40(infrannuale DDT non fatturati) — attiva solo sewo-param-elab = "AI", non consorzio, e date periodo valorizzate: scorre COGTESBO per data, esclude i DDT gia' fatturati (COGRACCO), filtra per causale/tipo (COGTABEL tipo 15, tipi bolla configurati), verifica sovrapposizione con il periodo di competenza contabile (COGTESAP), e per ogni riga COGMOMAG calcola il valore di competenza proporzionale ai giorni (routineGESDATE), determina il conto ricavo (COGTABEL tipo 16), costruisce una riga di prima nota fittizia (pno-anno = 99999999, documento da 900000) e scrive il record COGRISCO tipo "R" conrsc-fl-ddt-no-fatt = "S".a10-loop/a30— carica i record COGRISCO tipo "R" fase attiva nella griglia.a-grid/a-accept-grid— gestione griglia (F8 dettaglio via WIN053, Ctrl+E elimina riga, S+F4 stampa, F3 conferma).a1-aggiorna— verifica tabella conti ratei (COGTABEL tipo 29) e lanciaa-aggiorna/b-aggiorna.a-aggiorna/b-aggiorna— generano le scritture di prima nota (wr-cogpnonc), numerano il documento conCOGS25, scrivono la contab. analitica, e le contropartite ratei (a-contropartita/b-contropartita) con i conti da COGTABEL tipo 29. Marcano la fase su COGRISCO.fine/z-chiudi— chiusura file e finestra.
Sottoprogrammi chiamati¶
| Programma | Ruolo |
|---|---|
| COGS25 | Numerazione documento di prima nota |
| COGE77W | Gestione del documento generato (F9 nella dialog finale) |
| COGS52W | Editing/formattazione date |
| COGU10W | Formattazione/editing importi in valuta (calcolo quota DDT non fatturati) |
WIN053 (WIN053.COB) |
Dettaglio documento associato alla riga (F8) |
| GESDATE | Differenza in giorni tra due date (calcolo quota di competenza DDT) |
| DTPRG | Conversione data→progressivo giorni (calcolo giorni di competenza) |
| GRIDADMN | Gestore della griglia |
| DIALOGS | Dialog finale con esito registrazione documento |
| RNEWCONF | Lettura configurazioni (x99-src-cfg) |
Configurazioni (RNEWCONF)¶
Lette in x99-src-cfg:
| Gruppo | Chiave | Pilota |
|---|---|---|
| contabil | cogk13-tipo-fatturazione (idx 1..10) | Elenco tipi fatturazione (COGTESAP) da considerare nella ricerca DDT non fatturati infrannuale |
| FATTCARICA | reparto-generico-per-cc | Reparto generico per i movimenti di contab. analitica |
| CONTABIL | CA-REP-AGE | Se "S", forza reparto generico e magazzino principale sui movimenti COGMOVCC |
| contabil | ca-data-inizio-gestione | Data inizio gestione centri di costo (filtro sui movimenti analitici) |
| COGV39,Escludi tipo (MERCI.CNF, idx 1..5) | — | Tipi bolla da escludere nella ricerca DDT non fatturati (tm-cfg-tip) |
Note¶
- La distinzione rateo attivo/passivo deriva dal segno del documento (
rsc-segno): rispetto ai risconti la corrispondenza segno→attivo/passivo e i conti di contropartita sono quelli dedicati ai ratei (COGTABEL tipo 29, campi*-rat-*). - La logica sui DDT non fatturati (
carica-tab-40) e' specifica di COGK13 e assente in COGK12: serve a rilevare, in fase infrannuale (wo-param-elab = "AI"), il rateo attivo sui DDT emessi ma non ancora fatturati la cui competenza contabile ricade nel periodo. Viene esclusa se azienda consorzio (az-consorzi = "S"). pulizia-cogriscoelimina i record COGRISCO tipo "R" in fase non consolidata prima del ricarico.inizializza-elencoazzera l'intero elenco tipo "R" (flagw-deletabileforzato a "S", doppia conferma).- Codice legacy con
PERFORM ... THRUeGO TO: non usare come modello per nuove scritture. - Il sorgente contiene alla riga ~2180 un residuo
???a inizio riga sumove spaces to pno-to(marcatore di dubbio del programmatore, non un errore di compilazione): la colonna 7 non e' interessata, ma e' un punto da tenere presente in caso di manutenzione.