Vai al contenuto

COGP26 — Stampa Divise Estere

Campo Valore
Sorgente cbl/cogp26.cbl
Program-ID COGP26
Tipo Stampa
Posizione menu Contabilita' > Archivi & Tabelle > Tabelle > Stampe

Scopo

Produce il tabulato delle Divise Estere (valute), gestite come tipo 56 del file generalizzato COGTABEL. Per ogni divisa stampa il codice, la descrizione, il numero di cifre decimali gestite e il tipo di cambio.

Non sono previsti filtri: il programma scandisce sequenzialmente tutti i record di tipo 56 in ordine di chiave (euta-tipo + euta-cod), cioe' per codice divisa.

Struttura / flusso

  1. inizioctr-abil, z-99-init-program, x-carica-lingua, open-files, rd-azi.
  2. a002 — inizializza util-s54 e chiama COGS54 con s54-chr-stampa = 78 per la scelta del dispositivo di stampa. Esc/F2 terminano; F3 conferma.
  3. a4 — legge la data di sistema, mostra "Attendere Prego ...", azzera ctr-pag e ctr-rig, imposta euta-tipo = 56 con euta-cod = spaces, ed esegue st-cogtabel-notmin.
  4. ela-10-loop — ciclo: rdnxt-cogtabel; esce a fine-sta se w-fine-file o se euta-tipo <> 56. Valorizza la riga rigel: euta-codrg-cod, euta-descr1rg-des (descrizione divisa), euta-ve-decrg-decim (cifre decimali), euta-ve-tiprg-cam (tipo cambio). Alla prima riga (ctr-pag = zero) e ogni volta che ctr-rig supera s54-stm-lin - 10 esegue testa, quindi scrive riga from rigel.
  5. testa — azzera ctr-rig, incrementa ctr-pag, scrive il tratto (con salto pagina dalla seconda in poi), poi testa1 (titolo " Stampa Divise Estere " + pagina), testa2 (azienda az-int + data), e le intestazioni colonna testa3 (Codice / Descrizione / Cifre Decim. / cambio). Richiama cs1-print per la conferma stampante.
  6. fine-sta — salto pagina finale, s54-after-print = "S", chiamata COGS54 e cancel "COGS54".
  7. fine / z-chiudirem-clk, close cogtabel, z-99-exit-program, exit 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 56 (divise estere)
FLSTA flsta.cpy Output stampa File di stampa (righe riga)

Campi del record utilizzati (redefine euta-valute-estere): euta-descr1 (descrizione), euta-ve-dec (n. decimali), euta-ve-tip (tipo cambio: "l" = lire/valuta per unita', "v" = unita' per lira).

Sottoprogrammi chiamati

Programma Contesto Scopo
COGS54 a002, fine-sta Selezione dispositivo di stampa / anteprima e chiusura stampa

Copybook principali

  • FD / SELECT: feurtab.fd, cogp26.select, flsta.fd, cogfiles.cpy, cogp26.fd, flsta.cpy
  • Working storage generato: cogp26.wrk
  • Utilità: wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy, utils54.cpy
  • Linkage: wcont.cpy, wcont1.cpy
  • Screen: cogp26-01.scr
  • Fine procedure: grave.cpy, mmsubw.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy, cogp26.prc

Note

  • La descrizione stampata (rg-des) usa euta-descr1 (i primi 30 caratteri corrispondono a euta-ve-des nella redefine euta-valute-estere).
  • Il campo rg-cam riporta il codice euta-ve-tip (tipo di cambio); non viene esplicitata la legenda "l/v" nel tabulato.
  • Rottura sul cambio di euta-tipo (uscita appena il tipo supera 56).
  • Larghezza di stampa 78 caratteri; righe per pagina da s54-stm-lin.
  • La testata colonne (testa3) e' scritta due volte per l'effetto grassetto.