COGP76 — Stampa Ricevute Prestazioni Occasionali
| Campo |
Valore |
| Sorgente |
cbl/cogp76.cbl |
| Program-ID |
COGP76 |
| Tipo |
Stampa (con aggiornamento contabile) |
| Posizione menu |
Contabilita' > Documenti Iva |
Scopo
Stampa e contestuale aggiornamento in Prima Nota delle ricevute per prestazioni occasionali con ritenuta d'acconto, esenti IVA (collaborazione occasionale ai sensi dell'art. 5 comma 2 D.P.R. 633/72). L'operatore seleziona un fornitore/percipiente e inserisce l'importo netto; il programma calcola la ritenuta d'acconto e il lordo, numera il documento di Prima Nota e il certificato, scrive le tre registrazioni contabili (Dare, contropartita Cassa, contropartita Irpef) su COGPNONC e stampa la ricevuta in doppia copia.
I conti contabili delle tre contropartite (CO/GE Dare, Cassa, Irpef) e le causali (TO) sono letti dalla configurazione RNEWCONF gruppo RIACPREOCC e risolti sulla tabella contropartite COGTABEL tipo 16.
Struttura / flusso
apri — ctr-abil, z-99-init-program, x-carica-lingua, rd-azi, open-files. Legge la tabella anno contabile (COGTABEL tipo 66) in conta-rec (senza la quale esce). Definisce i tasti funzione (F1 configura, F3 conferma, F8 aiuto/calendario, F9 stampa/ricerca avanzata), imposta la divisa di conto (get-divisa-conto), prepara la maschera e legge la configurazione (x99-confi).
a4 — Inizializza la maschera, compone l'intestazione azienda (ragione sociale, indirizzo del magazzino principale letto da COGMAGAZ, P.Iva). Risolve i tre conti contabili leggendo COGTABEL tipo 16 con i codici di configurazione (tm-cg-dare, tm-cg-a-cassa, tm-cg-a-irpef); se un conto manca avvisa e apre la configurazione.
a-tm-for / a-tm-nome-ric / a-rd-ana — Selezione del fornitore per codice o per ragione sociale (ricerca tramite send-w06 / area utilw06). Legge l'anagrafica COGGEANA (rd-coggeana) e i dati di nascita da COGCNDCF (condizione NA); valorizza i campi della ricevuta (nome, indirizzo, localita', codice fiscale, codice ritenuta di default da ana-ritac).
a-tm-nome .. a-tm-cofi — Accept dei dati anagrafici del percipiente (nome, indirizzo, localita', provincia, cap, localita'/data di nascita, codice fiscale); le date sono gestite con COGS52 (calendario).
a-tm-data-cer — Data ricevuta, validata contro l'esercizio contabile (x-controlla-tm-data-cer: dentro esercizio aperto e non anteriore alla data minima di contabilizzazione).
a-tm-cod-rit — Codice ritenuta, validato su COGTABEL tipo 46 (x-controlla-tm-cod-rit), da cui ricava descrizione, aliquota ritenuta e aliquota imponibile.
a-tm-netto — Importo netto; x-controlla-tm-netto calcola ritenuta e lordo: lordo = netto / (100 - aliquota) * ..., ritac = lordo - netto, con arrotondamento ed edit via COGU10W.
a-poscur — Conferma finale (x-imposta-conferma), poi c-ini (dialogo stampa COGS54) e avvio dell'aggiornamento/stampa (clock-msg).
- Numerazione e Prima Nota — Numera il documento con COGS25 (codice 5) e scrive tre record su COGPNONC (
wr-cogpnonc): (1) Dare importo lordo, (2) contropartita Cassa importo netto, (3) contropartita Irpef importo ritenuta; ciascuno con la relativa causale TO da configurazione. Numera il certificato con COGS25 (codice 26).
inizio-stampa — Stampa la ricevuta in doppia copia (perform 2 times), componendo intestazione azienda, dati del percipiente, ricevuta n./data, importi (somma ricevuta, ritenuta d'acconto, netto), coda normativa e riga firma, tramite st-stampa-riga/st-stampa-riga-jump.
a-tm-ristampa — Consente la ristampa (F9) della stessa ricevuta senza rigenerare le registrazioni.
fine / z-chiudi — Chiude i file (COGTABEL, COGGEANA, COGCNDCF, COGPNONC, COGMAGAZ), finestra e programma.
File e tabelle principali
| File logico |
Record/chiave |
Modo |
Uso |
| FEURTAB (COGTABEL) |
euta-rec, chiave euta-tipo+euta-codr |
Input |
Anno contabile (tipo 66), contropartite CO/GE (tipo 16), codici ritenuta (tipo 46) |
| COGGEANA |
ana-rec, ana-tipo+ana-cod |
Input |
Anagrafica fornitore/percipiente |
| COGCNDCF |
cnd-rec, chiave cnd-tip+cnd-cod+cnd-cnd+cnd-key (cond. NA) |
Input |
Dati di nascita (localita'/data) del percipiente |
| COGPNONC |
pno-rec, chiave pno-docum+... |
Output |
Registrazioni di Prima Nota (3 righe per ricevuta) |
| COGMAGAZ |
magz-rec, magz-tipo="M"+magz-cod |
Input |
Indirizzo/localita' del magazzino principale (intestazione) |
| FLSTA |
flsta.fd/flsta.cpy (riga) |
Output |
File di stampa della ricevuta |
Sottoprogrammi chiamati
| Programma |
Contesto |
Scopo |
| COGS25 |
Numerazione P.Nota (cod. 5) e certificato (cod. 26) |
Assegnazione progressivi documento |
| COGS52W / COGS52 |
Gestione date (nascita, ricevuta) |
Edit data con calendario |
| COGS54 |
c-ini |
Dialogo di stampa/anteprima |
| COGU10W |
z-u10, controlli importi |
Edit, arrotondamento e conversione importi in divisa di conto |
| RNEWCONF |
x99-confi |
Configurazione contropartite e causali (gruppo RIACPREOCC) |
| send-w06 (UTILW06) |
a-tm-nome-ric |
Ricerca anagrafica per ragione sociale |
Copybook principali
feurtab.fd / cogfiles.cpy / cogp76.select / cogp76.fd — file tabelle generico e file specifico
flsta.fd / flsta.cpy — file di stampa
cogp76.wrk, cogp76.decla, cogp76.prc — working, declaratives e procedure generate da Screens
cogp76-01.scr — maschera dati ricevuta
COGCONTA.CPY (conta-rec) — dati anno contabile (esercizio, date di chiusura)
utils25.cpy (util-s25), utils52.cpy (util-s52), utils54.cpy (util-s54), UTILW06.CPY, utilu10.cpy + k-u10.cpy, utilncnf.cpy (util-ncnf), utils65.cpy — aree comunicazione sottoprogrammi
getdcont.cpy — recupero divisa di conto (get-divisa-conto)
printer.cpy — costanti di stampa (es. k-st-double-width-set/reset)
sendw06.cpy — routine send-w06
wstato.cpy, wgrave.cpy, wnscr.cpy, cogazien.cpy — working standard
stato.cpy, stato1.cpy, winmsg.cpy, grave.cpy, opengen.cpy, mmmask.cpy — fine procedure
- Linkage:
wcont.cpy, wcont1.cpy (stringhe)
Note
- Programma non di sola stampa: genera effettivamente le registrazioni di Prima Nota (3 righe su COGPNONC) e i progressivi documento/certificato tramite COGS25. La ristampa (F9) invece riproduce solo la stampa senza riscrivere la contabilita'.
- I codici delle contropartite CO/GE (Dare/Cassa/Irpef) e le causali TO sono parametrici via RNEWCONF gruppo
RIACPREOCC (chiavi euta-c026-cg-sp, euta-c026-cg-bo, euta-c026-cg-omaggio, euta-c026-to-sp, euta-c026-to-bo, euta-c026-to-omaggio); i codici puntano poi a COGTABEL tipo 16 per il mastro/conto/sottoconto effettivo.
- Il calcolo della ritenuta parte dall'importo netto immesso e ricostruisce lordo e ritenuta d'acconto usando l'aliquota del codice ritenuta (COGTABEL tipo 46).
- La stampa e' sempre in doppia copia (percipiente e ditta), con testo normativo fisso (art. 5 comma 2 D.P.R. 633/72).
- Il codice usa
GO TO interni ai paragrafi e PERFORM ... THRU (c-ini/ex-c-ini), coerentemente con lo stile del programma.