COSO54 - Carico quote IVA
Scopo
Calcola e carica gli addebiti per quote fisse, quote sul volume d'affari e quote per numero di registrazioni, partendo dai file DATINC (movimenti) e AMF037 (volumi). Produce per ogni codice fiscale un record con l'importo cumulativo, scritto in QQUOTE per la stampa di riepilogo.
File e tabelle
| File |
Tipo |
Descrizione |
| DATINC |
Sequenziale |
File input movimenti (selezionato dall'utente, copiato da server) |
| AMF037 |
Sequenziale |
File input volumi d'affari per socio |
| COGTRANS |
Indicizzato |
Archivio accumulatore per codice fiscale (chiave: CF, dato: importo cumulativo) |
| QQUOTE |
Sequenziale |
File di stampa finale (uno per socio) |
| UNANASO |
Indicizzato |
Anagrafiche soci (ricerca su CHIA6 = CF, fallback su CHIA2 = P.IVA) |
| COGTABEL |
Indicizzato |
Lookup causali e parametri |
Copybook
| Copybook |
Sezione |
Utilizzo |
| coso54.wrk / .fd / .select |
tutte |
Strutture generate da Screens |
| K-U10.CPY |
WORKING-STORAGE |
Utility per importi/numeri |
| cogazien.cpy |
WORKING-STORAGE |
Dati azienda |
| wopenf.cpy |
WORKING-STORAGE |
Apertura file |
| wstato.cpy |
WORKING-STORAGE |
Stato file |
| OPENSAVE.DEF |
WORKING-STORAGE |
File dialog GUI |
CALL
| Programma |
Quando |
Scopo |
| C$OPENSAVEBOX |
Su F5 |
Selezione file di input via dialog GUI |
| COPIAF |
All'inizio dell'elaborazione |
Copia file DATINC/AMF037 da server a temporaneo locale |
| COSO55A |
Al termine |
Stampa di riepilogo finale (modale, ex COSO55 — vedi sotto) |
Logica di elaborazione
Flusso principale
- Accetta nomi file input e parametri quote (fissa, % volume, per registrazione).
- Copia i file dal server in locale (COPIAF).
- Prima passata su DATINC: per ogni CF accumula in COGTRANS l'importo della quota fissa.
- Seconda passata su AMF037: per ogni CF aggiorna COGTRANS sommando volume × % quota volume / 100.
- Terza passata su DATINC: per ogni CF aggiorna COGTRANS aggiungendo num_movimenti × quota_registrazione.
- Per ogni record in COGTRANS legge UNANASO (ricerca su CHIA6 = CF, poi su CHIA2 = P.IVA) e scrive il record di stampa in QQUOTE.
- Chiama CSOS55 per la stampa finale.
Note tecniche
- Le date di dismissione anagrafica vengono confrontate con la data di sistema: se la data di dismissione e' successiva, l'anagrafica e' considerata valida.
- File di log in
tmp/#$coso54.ope con dettaglio operazioni.
- Transazionalita': in caso di errore, i file di output vengono ripuliti.
- L'unstring sui file di input usa tab (0x09) come separatore.
Note operative
- Dipende dal layout dei file DATINC/AMF037 forniti esternamente.
- La stampa finale e' generata dal sottoprogramma
COSO55A (alias di stampa del modulo COSO55, sorgente in cbl/coso55a.cbl con program-id. coso55.).
Storico modifiche
| Data |
Descrizione |
| 2026-05-21 |
Chiamata di stampa finale spostata da COSO55 a COSO55A. Nome del file di output addebiti.arc scritto in minuscolo (era ADDEBITI.ARC) per allinearsi alla convenzione case-sensitive del filesystem. La variabile idfile2 e' stata allungata da x(70) a x(270) per accogliere percorsi assoluti piu' lunghi. |