COG009 — Stampa intestazione/numerazione registri bollati¶
Sorgente: cbl/cog009.cbl | Tipo: stampa/report batch (con maschera di parametri) | Program-ID: cog009
Menu: Contabilita' > Prima Nota > Stampe > Libro Giornale > Intestazione ; Contabilita' > Documenti Iva > Stampe > Intestazione Registri
Scopo¶
Stampa l'intestazione e/o la numerazione delle pagine dei registri bollati (libro giornale, registri IVA). Serve a predisporre i moduli continui vidimati: per ciascuna pagina, entro l'intervallo richiesto, stampa in testa i dati dell'intestatario (ragione sociale, indirizzo, P.IVA/C.F., descrizioni libere) e/o la numerazione progressiva della pagina con l'anno.
L'operatore sceglie l'intervallo di pagine (da/a), l'anno, il tipo di stampa (Intestazione, Numerazione o Entrambe) e i dati dell'intestatario. I dati anagrafici sono precaricati dal cliente interno dell'azienda (az-cli-int, letto da COGGEANA) ma sono liberamente modificabili sulla maschera.
File e tabelle principali¶
| File/Tabella | Copybook | Uso |
|---|---|---|
COGGEANA |
(catena copybook azienda/anagrafiche) | Anagrafica generale: lettura del cliente interno (ana-tipo "C", ana-cod = az-cli-int) per precaricare ragione sociale, indirizzo, localita', provincia, P.IVA (ana-nome, ana-ind, ana-loca, ana-prov, ana-piva, ana-cofi) |
COGTABEL (feurtab) |
cogfiles.cpy |
Tabella generica di contabilita' (aperta con gli archivi standard) |
FLSTA |
flsta.cpy |
File di stato/servizio stampa |
La struttura tab-maschera raccoglie i parametri: tm-pag-da/tm-pag-a (intervallo pagine), tm-anno, tm-stampa (I/N/E), tm-cli (codice anagrafico) con i campi anagrafici derivati (tm-rag, tm-ind, tm-loc, tm-pro, tm-piv), tm-des-1/tm-des-2 (descrizioni libere) e tm-des-carb (descrizione bollato carburanti, solo consorzi). Copybook di servizio: cogazien.cpy, utils52.cpy (anno/calendario), utils54.cpy (avvio stampa), utils65.cpy (aiuto anagrafica).
Righe di stampa¶
testa1— riga anagrafica: ragione sociale (ts1-rag), etichetta "P.I.- " o "C.F.- " (in base aana-cofi(1:1)), partita IVA (ts1-piv), descrizione 1 (ts1-des) e, per la numerazione, "Pag. N." + numero pagina (ts1-pag) e anno (ts1-anno).testa2— riga indirizzo: indirizzo (ts2-ind), localita' (ts2-loc), provincia (ts2-pro), descrizione 2 (ts2-des).testa3— riga descrizione bollato carburanti (ts3-des-carb), stampata solo seaz-consorzi = "S".- Dopo ogni pagina viene emesso un salto pagina (
write riga from spaces before page).
Flusso principale¶
apri— init,ctr-abil,open-files; abilitaF3conferma eF8calendario.a4— inizializza la maschera (tm-stampa = "E"), precarica i dati anagrafici del cliente interno (az-cli-int→COGGEANA).a-tm-pag-da/a-tm-pag-a— accept dell'intervallo pagine con validazione (obbligatorie, da <= a).a-tm-anno— accept dell'anno tramiteCOGS52W(s52-verifica = "a").a-tm-stampa— combo del tipo di stampa (I/N/E) viaz-s60-tm-stampa.a-tm-cli— accept del codice anagrafico con aiuto/ricerca tramiteCOGS65W; se valorizzato, ricarica i campi anagrafici; se azzerato, abilita l'inserimento manuale dei campi (z-cambia-tm-rag/ind/loc/pro/piv).a-tm-rag...a-tm-piv— accept dei campi anagrafici (editabili solo quandotm-cli = 0).a-tm-des-1/a-tm-des-2— descrizioni libere (disabilitate setm-stampa = "N").a-tm-des-carb— descrizione bollato carburanti (visibile solo per consorzi).a-riga-fine— conferma finale; avvio stampa tramiteCOGS54(posizionamento,k-chr-stampa = 132).ela-00-loop...ela-90— ciclo di stampa datm-pag-daatm-pag-a: per ogni pagina riempietesta1/testa2(s1-intesta,s2-numerain base atm-stampa), stampa le righe di testa (eventualetesta3per consorzi) e avanza pagina; a fine stampa chiude conCOGS54(s54-after-print = "S").fine/z-chiudi— chiude i file ed esce.
Sottoprogrammi chiamati¶
| Programma | Ruolo |
|---|---|
COGS52W |
Editing/verifica dell'anno (con calendario su F8) |
COGS65W |
Aiuto/ricerca del codice anagrafico (cliente) |
COGS54 |
Gestione avvio e chiusura della stampa (dispositivo, posizionamento) |
Note¶
s1-intestaproduce la riga solo setm-stampae' "I" o "E";s2-numerasolo se "N" o "E"; con "N" (sola numerazione) i campi anagrafici e le descrizioni vengono disabilitati.- La riga
testa3(bollato carburanti) e' condizionata aaz-consorzi = "S": e' una personalizzazione per i consorzi. - Se la ragione sociale e' vuota, l'etichetta P.IVA e il valore vengono azzerati sulla riga di intestazione (
ts1-piv/ts1-pi). - Il sorgente usa estesamente
GO TOfra i paragrafi di accept e il ciclo di stampa (ela-00-loop,ela-89,ela-90): forma legacy della conversione, da non replicare.