Vai al contenuto

COGE60 -- Giro RiBa Ad Anno Nuovo

Sorgente: cbl/coge60.cbl | Program-ID: COGE60 | Tipo: Elaborazione batch con griglia e aggiornamento archivi

Menu: Vendite > Ricevute Bancarie > Giro Riba Ad Anno Nuovo


Scopo

Programma per il giroconto delle Ricevute Bancarie (RiBa) al nuovo esercizio. Legge le RiBa presentate in distinta tramite NUTDAGIR, le carica in una griglia di verifica, e alla conferma crea i movimenti di Prima Nota (COGPNONC) per: chiudere il conto transitorio RiBa (in avere), aprire il conto banca (in dare), e registrare le commissioni bancarie (in dare per il conto spese, in avere per il conto banca). Aggiorna il flag di giroconto su NUTDAGIR.


Struttura della maschera

Parametri di selezione

Campo Variabile Descrizione
Banca tm-ban(i) Codice banca (F8 per help tramite lookup banche). Validato con lettura COGBANCH.
Contropartita banche tm-wban(i) Codice conto banca per commissioni (F8 -> COGV04 per ricerca piano dei conti)

Griglia RiBa

Colonna Variabile Descrizione
Data grd-data Data valuta (formato gg/mm/aaaa)
Conto grd-conto Codice conto (mastro.conto.sottoconto)
Descrizione grd-conto-des Descrizione del conto
Importo grd-imp Importo formattato

Logica di elaborazione

Flusso principale

  1. apri: inizializzazione, lettura azienda, apertura file, configurazione tasti funzione, display maschera
  2. aaa1: creazione file COGTRANS temporaneo
  3. a4: reinizializzazione
  4. vis-tabella-ini: accept parametri (a-tm-ban, a-tm-wban), lettura RiBa da NUTDAGIR (riempi-file), caricamento griglia
  5. a-grid / vis-tabella-disp: accept griglia con gestione Ctrl+E (cancella), F3 (aggiorna), SF4 (personalizzazione), paginazione
  6. aggiorna: elaborazione principale -- crea movimenti in COGPNONC

Caricamento dati (riempi-file)

Lettura sequenziale di NUTDAGIR filtrata per banca selezionata, con le RiBa che hanno dag-flag = spaces (non ancora girate). Per ogni RiBa:

  1. Legge i dati della distinta (valuta, distinta, conto transitorio, importo, tipo B/commissioni)
  2. Scrive record su COGTRANS con chiave valuta + distinta + mastro/conto/sottoconto

Elaborazione (aggiorna)

L'elaborazione si articola in 3 passate sequenziali su COGTRANS:

Passata 1 -- Controllo date (controllo-valute): Per ogni record, verifica che la data valuta sia: - >= data contabilizzazione (datdachiur) - <= data chiusura anno attuale (datchiuatt) - > data chiusura anno precedente (datchiupre)

Passata 2 -- Creazione movimenti PN (tratta-cogtrans-1): Per ogni gruppo valuta/distinta:

  1. x1-agg-num: chiama COGS25 per ottenere un nuovo numero documento
  2. Per record tipo "B" (banca):
  3. agg-ban: crea movimento in DARE sul conto banca (trs-mastro/conto/sconto)
  4. agg-tran: crea movimento in AVERE sul conto transitorio RiBa (ban-mas-tra/con-tra/sco-tra)
  5. Per record commissioni:
  6. agg-comm: crea movimento in DARE sul conto commissioni (trs-mastro/conto/sconto)
  7. agg-tran1: crea movimento in AVERE sul conto banca (tm-wban-mas/con/sco)

Ogni movimento PN include: data da valuta RiBa, tipo operazione, segno D/A, descrizione "RIBA CLIENTI DIST. N. {n}", importo, divisa conto, numero documento, anno contabile, riferimento distinta in partita.

Passata 3 -- Aggiornamento NUTDAGIR (tratta-cogtrans-2): Per ogni record, marca il record NUTDAGIR con dag-flag = "*" e dag-flag1 = "*" per evitare elaborazioni duplicate.

Al termine viene mostrato il range di documenti creati (primo-doc -> documento), oppure "Elaborazione terminata!" se la numerazione e' manuale.


File utilizzati

File Accesso Scopo
COGPNONC I-O Prima Nota non contabilizzata -- creazione movimenti di giroconto
NUTDAGIR I-O Distinte RiBa -- lettura RiBa da girocontare e aggiornamento flag
COGBANCH Lettura Anagrafica banche -- validazione e dati conto transitorio
COGTABEL Lettura Tabella generica contabilita' (tipo 66 -- esercizio, date chiusura)
COGPNCON Lettura Piano dei conti (validazione)
COGTRANS I-O File transito temporaneo per griglia (in ext-tmp-dir)

Struttura COGTRANS

trs-chia1:
  trs-val         pic 9(08)   Data valuta (AAAAMMGG)
  trs-dist        pic 9(06)   Numero distinta
  trs-mastro      pic 9(02)   Mastro
  trs-conto       pic 9(02)   Conto
  trs-sconto      pic 9(06)   Sottoconto
trs-des           pic x(25)   Descrizione
trs-to            pic 9(03)   Tipo operazione
trs-impo          pic 9(12)v9(06) Importo
trs-tipo          pic x(01)   "B" = banca, altro = commissioni
trs-flag          pic x(01)   Flag elaborazione
trs-ban           pic 9(04)   Codice banca

Programmi chiamati

Programma Scopo
COGS25 Generazione numero documento Prima Nota (s25-i-cod = 5)
COGS52W Calendario (date picker, F8)
COGV04 Ricerca piano dei conti (F8 su contropartita banche)
GRIDADMN Gestione griglia (prepara, svuota, add-record, personalizzazione SF4)

Copybook principali

coge60.wrk, coge60.select, coge60.fd, coge60.decla, coge60-01.scr, k-u10.cpy, cogfiles.cpy, cogazien.cpy, cogconta.cpy, wgrid.cpy, utilgdad.cpy, utilu03.cpy, utils52.cpy, utilu10.cpy, utilrcnf.cpy, utils25.cpy, utilv04.cpy


Note

  • Programma di aggiornamento: modifica COGPNONC (creazione movimenti PN) e NUTDAGIR (flag giroconto). Non e' una consultazione.
  • I movimenti PN vengono scritti con pno-contabil = spaces (non contabilizzati), pronti per la successiva contabilizzazione.
  • Il riferimento alla distinta viene salvato in pno-panpart per mantenere il collegamento tra il movimento PN e la distinta RiBa.
  • La variabile tot-transito accumula il totale dei movimenti per controllo di quadratura.
  • Il numero documento viene richiesto a COGS25 con codice tipo 5, anno e mese estratti dalla data valuta della RiBa.
  • Le date di esercizio (datchiuatt, datchiupre, datdachiur) vengono lette da COGTABEL tipo 66 (record conta-rec).