COG002 -- Causali P.Nota¶
Sorgente: cbl/cog002.cbl | Tipo: Programma di stampa | Program-ID: COG002
Menu: Contabilita' > Archivi & Tabelle > Tabelle > Stampe
Scopo¶
Stampa dell'elenco delle causali contabili (tipi operazioni contabili). Il programma carica le causali da COGTABEL (tipo 65) in un file di transito temporaneo, quindi le stampa ordinate per codice o per descrizione a scelta dell'utente.
File e tabelle¶
| File/Tabella | Tipo | Descrizione |
|---|---|---|
| COGTABEL (FEURTAB) | Indexed, I-O | Tabella generale: causali contabili (tipo 65) |
| COGTRANS | Indexed, I-O | File di transito temporaneo (chiave primaria = codice, chiave alternata = descrizione) |
| FLSTA | Sequential, Output | File di stampa |
Copybook principali¶
cog002.wrk/cog002.select/cog002.fd/cog002.prc/cog002.decla- Screen designercogfiles.cpy- Definizione file tabella generalecogazien.cpy- Dati azienda (ragione sociale per intestazione)utils54.cpy- Gestione output stampa (COGS54)cogtrans.k01/cogtrans.k02- Routine I/O file transito (chiave primaria e secondaria)wstato.cpy/wgrave.cpy/wopenf.cpy/wnscr.cpy- Working storage standard
Struttura del programma¶
Record file transito (COGTRANS)¶
trs-rec:
trs-chia1:
trs-codr PIC X(03) -- codice causale
trs-chia2:
trs-descr PIC X(35) -- descrizione causale
Chiave primaria: trs-chia1 (codice). Chiave alternata con duplicati: trs-chia2 (descrizione).
Paragrafi principali¶
| Paragrafo | Funzione |
|---|---|
apri |
Inizializzazione, apertura file, creazione file transito in directory temporanea |
a4 |
Inizializzazione maschera, default ordinamento "C" (per codice) |
a-tm-tipo-stp |
Accept tipo ordinamento (C=codice, D=descrizione) |
a-riga-fine |
Validazione, chiamata COGS54 per selezione destinazione stampa |
carica-transito |
Lettura causali da COGTABEL tipo 65, scrittura in file transito |
stampa-dati |
Posizionamento su file transito (chiave 1 o 2 in base all'ordinamento), loop di stampa |
stampa-testa |
Intestazione pagina: azienda, data, titolo, numero pagina |
stampa-riga |
Stampa singola riga: codice + descrizione |
Flusso di elaborazione¶
- Il programma crea un file di transito temporaneo nella directory temp con nome
#$COG002.<operatore>. - Legge tutte le causali da COGTABEL tipo 65 (loop
carica-transito) e le scrive nel file transito. I codici alfanumerici mantengono gli zeri iniziali, quelli numerici li rimuovono. - In base al tipo ordinamento scelto:
- "C" (codice): posizionamento su chiave primaria (
st-cogtrans-notmin) - "D" (descrizione): posizionamento su chiave alternata (
st-cogtrans-notmin-chia2) - Legge sequenzialmente il file transito e stampa ciascun record.
- A fine stampa, chiama COGS54 con
s54-after-print = "S"per finalizzare.
Logica di elaborazione¶
Formato stampa¶
- Larghezza: 78 caratteri (
k-chr-stampa) - Intestazione: ragione sociale azienda, titolo "TIPI OPERAZIONI CONTABILI", data, numero pagina
- Dettaglio: codice (3 car.) + descrizione (40 car.) indentati
Gestione file transito¶
Il file transito e' creato nella directory temporanea con nome univoco per operatore, cosi' piu' operatori possono usare la funzione contemporaneamente. Viene cancellato (DELETE) alla chiusura.
CALL esterne¶
| Programma | Scopo |
|---|---|
COGS54 |
Gestione output stampa (selezione stampante, anteprima, file) |