Vai al contenuto

COGK64 - Inserimento Prima Nota Contabile (Coassicurazioni)

Sorgente: cbl/cogk64.cbl | Program-ID: COGK64 | Tipo: Interattivo con elaborazione batch

Menu: Contabilita' > Coassicurazioni > Inserimento P.Nota contabile


Scopo

Genera scritture di prima nota contabile (COGPNONC) e registrazioni IVA (COGARIVA) a partire dai movimenti di coassicurazione (COASSMOV) in un intervallo di date di incasso. Raggruppa per compagnia assicurativa e crea documenti contabili multipli con numerazione progressiva.


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB Tabella Input Tabella generale Eurosystem
COGTABEL Tabella Input Tabelle di sistema (tipo 66: contabilita', tipo 68: IVA, tipo 14: pagamenti)
COGGEANA Tabella Input Anagrafica generale (agenti, compagnie)
COGPNONC Tabella I-O Prima nota contabile - scritture generate
COGARIVA Tabella I-O Archivio IVA - registrazioni generate
COGCOASS Tabella Input Anagrafica coassicurazioni (polizze)
COASSMOV Tabella Input Movimenti coassicurazione (incassi, quietanze)
COGAPPOG Tabella Input Archivio appoggio
COGBNCA Tabella Input Archivio banche
LAVORO File temp I-O File indicizzato temporaneo di elaborazione
TRANSITO File temp Input File di configurazione conti (da COGK64.cnf)

Copybook utilizzate

Copybook Descrizione
cogfiles.cpy Struttura generica FEURTAB
cogtabel.cpy Record tabelle di sistema
coggeana.cpy Record anagrafica generale
cogpnonc.cpy Record prima nota contabile
cogariva.cpy Record archivio IVA
cogcoass.cpy Record coassicurazioni
coassmov.cpy Record movimenti coassicurazione
cogappog.cpy Record archivio appoggio
cogbnca.cpy Record banche
costanti.cpy Costanti di sistema
wstato.cpy, wgrave.cpy, wopenf.cpy, wnscr.cpy Working storage comuni
cogazien.cpy Dati azienda
cogconta.cpy Dati contabilita'
utils54.cpy Utility stampa
utilw06.cpy Utility finestra
utils21.cpy Utility generica
utils52.cpy Utility date/calendario
utils25.cpy Utility numerazione progressiva
utils65.cpy Utility generica
cogtabel.k01 Chiave primaria COGTABEL
cogpnonc.k01 Chiave primaria COGPNONC
cogariva.k01 Chiave primaria COGARIVA
coggeana.k01 Chiave primaria COGGEANA
cogcoass.k01 Chiave primaria COGCOASS
coassmov.k01 Chiave primaria COASSMOV
coassmov.k03 Chiave secondaria COASSMOV (per data incasso)
cogappog.k01 Chiave primaria COGAPPOG
cogbnca.k01 Chiave primaria COGBNCA

Struttura del programma

Variabili della maschera (tab-maschera)

Variabile PIC Descrizione
tm-tipo X(01) Tipo elaborazione (Q=Quietanze, I=Incassi, N=Non incassati) - attualmente fisso "Q"
tm-daint-in 9(08) Data incasso iniziale
tm-daint-fi 9(08) Data incasso finale
tm-data-co 9(08) Data contabile

File di lavoro (LAVORO)

Record lav-rec con chiave composta:

  • lav-compagnia (9(05))
  • lav-ramo (9(02))
  • lav-npol (9(13))
  • lav-data-eff (9(08))
  • lav-data-inca (9(08))

Dati: agente, percentuale, incassato netto/lordo, premio netto/lordo, percentuale provvigione, importo provvigione, importo ritenuta d'acconto, tipo documento.

Conti contabili (da file transito)

Array w-area (20 occorrenze) caricato dal file COGK64.cnf:

  • w-conto(1) - Conto ricavi (provvigioni)
  • w-conto(2) - Conto ritenuta d'acconto
  • w-conto(20) - Tipo operazione (w-to)

Flusso principale

  1. apri - Inizializzazione, apertura file, lettura configurazione conti da COGK64.cnf
  2. a002/a002b - Caricamento conti da file transito sequenziale
  3. a4 - Inizializzazione maschera, tipo fisso "Q"
  4. a-tm-daint-in - Accept data inizio incasso
  5. a-tm-daint-fi - Accept data fine incasso
  6. a-tm-data-co - Accept data contabile
  7. a-riga-fine - Validazione completa e conferma
  8. elabora2 - Fase elaborazione: caricamento dati in file lavoro
  9. stampa - Fase scrittura contabile: scansione file lavoro e generazione documenti

Logica di elaborazione (elabora2)

  1. Posizionamento su COASSMOV per chiave secondaria K03 (data incasso)
  2. Loop da tm-daint-in a tm-daint-fi
  3. Per ogni movimento: lettura coassicurazione corrispondente (COGCOASS)
  4. Per ogni compagnia nel movimento: creazione record nel file LAVORO con provvigioni e ritenute

Logica di scrittura contabile (stampa / scri-contab)

Per ogni cambio di compagnia nel file LAVORO:

  1. prendi-num - Numerazione progressiva tramite COGS25 (codice 5)
  2. Conto ricavi - Scrittura avere su w-conto(1) per importo provvigioni
  3. Conto agente - Scrittura dare su conto dell'agente (da COGGEANA)
  4. Registrazione IVA - Scrittura su COGARIVA (codice aliqu. "ES", esenzione "10")
  5. Ritenuta d'acconto (se presente):
    • Scrittura avere sul conto agente per importo ritenuta
    • Scrittura dare su w-conto(2) per importo ritenuta
  6. Provvigione netta c/agente - Scrittura avere sul conto agente
  7. Provvigione netta c/compagnia - Scrittura dare sul conto compagnia (da COGGEANA, tipo fornitore)

Chiamate esterne

Programma Modalita' Scopo
COGS52W CALL Gestione date con calendario
COGS25 CALL Numerazione progressiva documenti
COGS54 CALL Gestione stampa (commentato nel codice)

Note

  • Il campo tm-tipo (Q/I/N) e' presente nel codice ma la combo-box e' commentata nella screen section; il tipo e' fisso "Q" (Quietanze) nella logica corrente.
  • La chiave secondaria K03 di COASSMOV e' usata per la scansione per data incasso (st-coassmov-notmin-chia2).
  • Il file di configurazione conti (COGK64.cnf) si trova nella directory archivi (ext-arc-dir).
  • Il file lavoro temporaneo (#$COGK64.<operatore>) si trova nella directory temporanea e viene cancellato alla chiusura.