COGC12 - Riorganizzazione archivio IVA (eliminazione anno)¶
Sorgente: cbl/cogc12.cbl | Tipo: interattivo GUI a maschera con elaborazione batch | Program-ID: COGC12
Menu: Sistema > Archivi > Riorganizzazioni > Iva
Scopo¶
COGC12 riorganizza l'archivio dei registri/movimenti IVA (COGARIVA) eliminando tutti i movimenti relativi a un determinato anno. Serve a ripulire l'archivio dai dati IVA di annualita' non piu' necessarie, riducendone la dimensione.
L'operatore indica l'anno da cancellare (tm-anno); il programma scandisce COGARIVA a partire da quell'anno e cancella tutti i record fino a tutto l'anno indicato. Al termine la maschera espone i contatori di record letti (tm-letti) e cancellati (tm-canc).
File e tabelle principali¶
| File/Tabella | Copybook / definizione | Uso |
|---|---|---|
COGARIVA |
cogc12.fd (record iva-..., chiave iva-chia con iva-anno) |
Archivio movimenti IVA da riorganizzare: posizionato all'anno richiesto e scandito in avanti; i record con anno ≤ anno indicato vengono cancellati (del-cogariva) |
COGTABEL (feurtab) |
cogfiles.cpy |
Parametri azienda (rd-azi) e servizi standard |
La chiave iva-chia inizia con iva-anno: il programma posiziona con move tm-anno to iva-anno + st-cogariva-notmin (start not-min) e scandisce con rdnxt-cogariva; la rottura avviene quando iva-anno > tm-anno.
Logica di elaborazione¶
apri—z-99-init-program,ctr-abil,rd-azi,open-files; prepara la maschera "Riorganizzo Archivio IVA".a4— azzera i contatori di maschera e mostra un avviso (vbx-msg): "questa funzione elimina i movimenti di un determinato anno dall'archivio. Provvedi al salvataggio archivi prima di procedere!!".a-tm-anno— accept dell'anno; validazionex-controlla-tm-anno(l'anno deve essere significativo,>= 1992, altrimenti "Digitare Anno Significativo"). Tasti: F2 richiama il campo, F3 richiesta conferma, ESC esce.a-richiesta-conferma— imposta e verifica la conferma (x-imposta-conferma,acc-conf).b-00/b-00-loop(eliminazione) — posizionaCOGARIVAsull'anno (iva-anno = tm-anno,st-cogariva-notmin) e scandisce in avanti (rdnxt-cogariva): per ogni record letto incrementatm-letti; appenaiva-anno > tm-annotermina il ciclo (go to b-90); altrimenti cancella il record (del-cogariva) e incrementatm-canc. I contatori vengono aggiornati a video a ogni iterazione.b-90— messaggio finale che invita a eseguire l'utility di compattazione archivi perCOGARIVA.ARC(la cancellazione logica non recupera spazio fino alla compattazione fisica).
Note e avvertenze operative¶
- Da eseguire in esclusiva: cancella record da
COGARIVAin modo massivo; va lanciato senza altri accessi in corso sull'archivio IVA. - Backup obbligatorio: la funzione avvisa esplicitamente di provvedere al salvataggio archivi prima di procedere. L'operazione non e' reversibile a livello dati.
- Compattazione successiva: al termine l'archivio
COGARIVA.ARCva compattato con l'apposita utility per recuperare fisicamente lo spazio dei record cancellati. - Ambito: elimina l'anno indicato (e solo quello: la rottura e' su
iva-anno > tm-anno). Anni antecedenti eventualmente presenti prima del punto di start non vengono raggiunti, poiche' il posizionamento e' esatto sull'anno richiesto. - Sorgente legacy convertito a GUI: elaborazione governata da
GO TOfra paragrafi (a-tm-anno,b-00,b-90,fine); accessi al file tramite le routine generate da Screens (st-cogariva-notmin,rdnxt-cogariva,del-cogariva).