COGE95 - Controllo Numerazioni IVA Clienti/Fornitori¶
Sorgente: cbl/coge95.cbl | Program-ID: COGE95 | Tipo: Programma interattivo (mmmask)
Menu: Contabilita' > Documenti Iva > Stampe
Scopo¶
Controlla l'integrita' della numerazione del giornale IVA clienti o fornitori:
rileva buchi nella sequenza progressiva, duplicati e date non progressive.
Il tipo C/F e' passato via wo-parametro (default C=Clienti).
File e tabelle¶
| File/Tabella | Tipo | Modalita' | Descrizione |
|---|---|---|---|
| COGTABEL | Indexed | Input | Tabelle generiche (tipo 68: tipi doc.) |
| COGARIVA | Indexed | Input | Archivio IVA clienti/fornitori |
| COGFATTU | Indexed | Input | Archivio fatture (controllo messa arrivo) |
| SCARICO | Indexed | I/O | File temporaneo per rilevamento duplic. |
| FLSTA | Sequential | Output | File stampa |
Il file scarico e' un file temporaneo creato in ext-tmp-dir con nome
ctriva.<wo-oper>, strutturato per chiave (anno, nfat, nrecord, tdoc).
Copybook utilizzate¶
| Copybook | Descrizione |
|---|---|
| wstato.cpy | Gestione status file |
| wgrave.cpy | Gestione errori gravi |
| wopenf.cpy | Apertura file generica |
| wnscr.cpy | Variabili di schermata |
| cogazien.cpy | Dati azienda (incl. az-gio-num per modalita' T) |
| cogcont1.cpy | Dati contabilita' |
| utils52.cpy | Utility calendario/data |
| utils54.cpy | Utility gestione stampa (COGS54) |
| utilw67.cpy | Utility W67 (ricerca tipo documento IVA) |
| k-u10.cpy | Costanti |
Logica di elaborazione¶
- Il parametro
wo-parametrodetermina il tipo (C o F); il titolo della maschera cambia di conseguenza. - L'utente imposta: tipo giornale (
tm-tipogior), tipo documento (tm-fat-tip), anno competenza (tm-annocomp), intervallo numeri. - Se
az-gio-num = "T"(giornale per tipo documento) il programma itera su tutti i tipi documento trovati in COGTABEL tipo 68 coneuta-clifotiva = tm-tipogior, eseguendo la routinetratta-cogarivaper ognuno. - In modalita' standard scansiona COGARIVA ordinato per anno + nfat; per ogni
record con
iva-nrecord = 0incrementa un contatore e verifica la progressivita' con il contatore atteso. - I duplicati vengono rilevati tentando di scrivere su
scaricocon chiave univoca: in caso diinvalid keyil record esiste gia' (duplicato). - I buchi vengono segnalati dal paragrafo
scrivi-righeche stampa un messaggio per ogni numero mancante nell'intervallo. - Le date non progressive generano un messaggio con i numeri e le date coinvolte.
- Contatori finali:
i= duplicati,j= buchi,k= date non progressive. - Dopo la stampa viene chiamato
COGS54per la gestione della destinazione.
Paragrafo tratta-cogariva (modalita' T): stesso algoritmo ma con filtro
aggiuntivo su iva-tdoc. Il sorgente usa ancora PERFORM ... THRU (riga 418:
perform tratta-cogariva thru ex-tratta-cogariva) — comportamento legacy.
Chiamate a sottoprogrammi¶
| Programma | Funzione |
|---|---|
| WIN067 | Popup selezione tipo documento IVA (F8) |
| COGS54 | Gestione stampa (scelta destinazione + invio) |