Vai al contenuto

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

  1. apri — inizializzazione, apertura file, lettura configurazioni (x99-src-cfg), apertura COGCOATT/COGCOPRE, lettura divisa conto.
  2. carica-dati-iniziali — descrizione elaborazione e date esercizio da COGTABEL tipo 66.
  3. Accept parametri: a-tm-data-fine, a-tm-data-init, a-tm-data-regis-contabile, a-tm-prov e — per la modalita' infrannuale con DDT non fatturati — le date a-tm-da-data / a-tm-a-data (periodo ricerca DDT) e a-tm-da-data-cc / a-tm-a-data-cc (periodo competenza contabile), con relativi controlli.
  4. carica-tab — (solo se wo-parametro (1:1) = "A") previa pulizia-cogrisco, scorre COGCOATT (carica-tab-10) e COGPNONC (carica-tab-30) richiamando carica-risco, poi — se applicabile — carica-tab-40.
  5. 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).
  6. carica-tab-40 (infrannuale DDT non fatturati) — attiva solo se wo-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 (routine GESDATE), 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" con rsc-fl-ddt-no-fatt = "S".
  7. a10-loop / a30 — carica i record COGRISCO tipo "R" fase attiva nella griglia.
  8. a-grid / a-accept-grid — gestione griglia (F8 dettaglio via WIN053, Ctrl+E elimina riga, S+F4 stampa, F3 conferma).
  9. a1-aggiorna — verifica tabella conti ratei (COGTABEL tipo 29) e lancia a-aggiorna/b-aggiorna.
  10. a-aggiorna / b-aggiorna — generano le scritture di prima nota (wr-cogpnonc), numerano il documento con COGS25, scrivono la contab. analitica, e le contropartite ratei (a-contropartita / b-contropartita) con i conti da COGTABEL tipo 29. Marcano la fase su COGRISCO.
  11. 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-cogrisco elimina i record COGRISCO tipo "R" in fase non consolidata prima del ricarico. inizializza-elenco azzera l'intero elenco tipo "R" (flag w-deletabile forzato a "S", doppia conferma).
  • Codice legacy con PERFORM ... THRU e GO TO: non usare come modello per nuove scritture.
  • Il sorgente contiene alla riga ~2180 un residuo ??? a inizio riga su move 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.