COGP25 — Stampa Stati Esteri¶
| Campo | Valore |
|---|---|
| Sorgente | cbl/cogp25.cbl |
| Program-ID | COGP25 |
| Tipo | Stampa |
| Posizione menu | Contabilita' > Archivi & Tabelle > Tabelle > Stampe |
Scopo¶
Produce il tabulato degli Stati Esteri, ovvero la tabella dei codici nazione
gestita come tipo 54 del file generalizzato COGTABEL. La stampa elenca, per
ogni stato, il codice, la descrizione, la classificazione (Intracomunitario /
Extracomunitario) e la sigla ISO.
Il programma non applica filtri di selezione: scandisce l'intero contenuto della
tabella tipo 54 in ordine di chiave (euta-tipo + euta-cod), che corrisponde
all'ordinamento per codice stato.
Struttura / flusso¶
inizio— impostaprog-err/w-nome-hlp, eseguectr-abil,z-99-init-program,x-carica-lingua,open-files,rd-azi.a002— inizializza l'areautil-s54e chiama COGS54 (gestione dispositivo di stampa / anteprima) cons54-chr-stampa = 78. Se l'utente preme Esc o F2 termina; se non preme F3 ripropone la scelta; con F3 procede.a4— legge la data di sistema (accept datasis from century-date), mostra il messaggio "Attendere Prego ...", azzeractr-pag, impostactr-rig = 200(forza la testata alla prima riga), posizionaeuta-tipo = 54coneuta-cod = spacesed eseguest-cogtabel-notmin(start not less than).a015— ciclo di lettura sequenziale:rdnxt-cogtabel; esce (fine-sta) quandow-fine-fileo quandoeuta-tipo <> 54(rottura di tipo). Per ogni record valorizza la riga di dettagliorigelconeuta-cod→rg-cod,euta-st-des→rg-des, la traduzione dieuta-st-tip("I"→ "Intracomunitario", altrimenti "Extracomunitario") →rg-tip,euta-st-sigla→rg-sigla. Sectr-rigsuperas54-stm-lin - 12eseguetesta(nuova pagina) e poi scriveriga from rigel.testa— stampa l'intestazione: riga di separazione,testa1(titolo " Stampa Stati Esteri " + numero pagina),testa2(intestazione aziendaaz-int+ data di stampa), e la riga colonnetesta3(Codice / Descrizione / Tipo / Sigla). Richiamacs1-printper la conferma stampante; con Esc termina, con F3 rilancia la testata.fine-sta— scrive un salto pagina finale, impostas54-after-print = "S"e richiama COGS54 per chiudere la stampa, quindicancel "COGS54".fine/z-chiudi— rimuove il clock, chiude COGTABEL, eseguez-99-exit-programedexit program.
File e tabelle principali¶
| File logico | Record/chiave | Modo | Uso |
|---|---|---|---|
COGTABEL (feurtab) |
euta-rec, chiave euta-tipo+euta-cod |
Input sequenziale | Lettura tabella tipo 54 (stati esteri) |
| FLSTA | flsta.cpy |
Output stampa | File di stampa (righe riga) |
Campi del record utilizzati (redefine euta-stati): euta-st-des,
euta-st-tip, euta-st-sigla.
Sottoprogrammi chiamati¶
| Programma | Contesto | Scopo |
|---|---|---|
| COGS54 | a002, fine-sta |
Selezione dispositivo di stampa / anteprima e chiusura stampa |
Copybook principali¶
- FD / SELECT:
feurtab.fd,cogp25.select,flsta.fd,cogfiles.cpy,cogp25.fd,flsta.cpy - Working storage generato:
cogp25.wrk - Utilità:
wgrave.cpy,wnscr.cpy,wopenf.cpy,wstato.cpy,cogazien.cpy,utils54.cpy - Linkage:
wcont.cpy,wcont1.cpy - Screen:
cogp25-01.scr - Fine procedure:
grave.cpy,mmsubw.cpy,opengen.cpy,stato.cpy,stato1.cpy,winmsg.cpy,cogp25.prc
Note¶
- La testata di dettaglio (
testa3) viene scritta due volte consecutive (after 2eafter zero), pratica di grassetto per sovrastampa tipica delle stampe legacy Eurocoge. - La rottura di elaborazione avviene sul cambio di
euta-tipo: essendo COGTABEL un file multi-tabella, il ciclo si ferma appena si supera il blocco dei record con tipo 54. - La larghezza di stampa e' fissata a 78 caratteri (
s54-chr-stampa); il numero di righe per pagina e' determinato da COGS54 tramites54-stm-lin. - Le descrizioni in lingua di etichette e messaggi sono caricate da
x-carica-lingua(READLNG).