EUF58 - Stampa Assegni¶
Funzione¶
Stampa assegni bancari relativi a note di accredito (ristorni). Per ogni documento nell'intervallo specificato, calcola l'importo netto, converte in lettere, e produce la stampa su modulo assegno prestampato. Registra i numeri assegno su un archivio di numerazione.
Menu¶
- Vendite > Ristorni > Stampa Assegni
Tabelle e file principali¶
| Tabella/File | Descrizione | Accesso |
|---|---|---|
| COGFATTU | Archivio fatture/note di credito (fat-rec) | Lettura sequenziale per tipo+anno+numero |
| COGGEANA | Anagrafica clienti (ana-rec) | Lettura diretta per codice cliente dalla fattura |
| E4NUMASS | Archivio numerazione assegni (ass-rec, chiave ass-tip+ass-ann+ass-num) | Scrittura/riscrittura per registrazione assegni stampati |
| FEURTAB | Tabella configurazione | Lettura |
| STA | File di stampa (stampante PRINTER, linage 17) | Scrittura |
Copybook e sottoprogrammi¶
| Elemento | Tipo | Ruolo |
|---|---|---|
| euf58.select/fd/wrk/prc/decla | Screen | Definizioni screen e procedure generate |
| cogfiles.cpy | Copybook | Struttura FEURTAB |
| utils54.cpy | Copybook | Interfaccia COGS54 (gestione stampante) |
| utils52.cpy | Copybook | Interfaccia COGS52 (calendario) |
| utilv75.cpy | Copybook | Interfaccia COGV75 (conversione numero in lettere) |
| utilu10.cpy | Copybook | Interfaccia U10 (gestione importi con divisa) |
| k-u10.cpy | Copybook | Costanti U10 |
| getdcont.cpy | Copybook | Gestione divisa conto |
| COGS54 | Sottoprogramma | Gestione periferica di stampa (modalita' EPSON, manuale) |
| COGV75 | Sottoprogramma | Conversione importo numerico in lettere |
Logica principale¶
-
Acquisizione parametri: intervallo documenti (
tm-da-tip/tm-da-ann/tm-da-numatm-a-tip/tm-a-ann/tm-a-num), numero assegno iniziale (tm-da-ass), importo da sottrarre (tm-imp-s). -
Validazione: anno obbligatorio (da e a), numero assegno iniziale obbligatorio. Il tipo "a" viene forzato uguale al tipo "da".
-
Apertura stampante: COGS54 con emulazione EPSON e flag
s54-fl-manual = "S". Stampa su file STA conlinage 17(17 righe per modulo assegno). -
Apertura archivio assegni: E4NUMASS in
ext-arc-dir/e4numass.arc; se non esiste viene creato. -
Elaborazione (paragrafo
a113/a115): - Posizionamento su COGFATTU con
fat-tip = tm-da-tip,fat-ann = tm-da-ann,fat-num = tm-da-num. - Lettura sequenziale fino a
fat-num > tm-a-numo cambio tipo/anno. - Per ogni documento:
w-fat-importo-40 = fat-importo(40) - tm-imp-s. -
Se importo netto > 0:
- Chiama
sta-assegnoper la stampa. - Chiama
scrivi-file-numassper la registrazione. - Incrementa il numero assegno.
- Chiama
-
Stampa assegno (paragrafo
sta-assegno): - Calcolo importo netto, conversione in lettere tramite COGV75 (
v75-numero,v75-col0 = 50). - Layout assegno: riga r6 (importo in cifre + data + citta'), riga r7b/r8b (importo in lettere su due righe), riga r9b (codice + nome beneficiario da COGGEANA).
- Salto pagina dopo ogni assegno.
-
Accumulo totale in
totale, conteggio inctl. -
Registrazione assegno (paragrafo
scrivi-file-numass): - Scrittura su E4NUMASS con chiave
ass-tip+ass-ann+ass-numdalla fattura,ass-numerodal numero assegno corrente,ass-importodall'importo netto. -
Se la chiave esiste gia', esegue REWRITE.
-
Riepilogo finale: box messaggio con totale euro e numero assegni stampati.
Note¶
- Il file STA ha
linage 17, dimensionato per moduli assegno prestampati. - La citta' sull'assegno e' fissa: "SORBARA" (r6-citta) con conto corrente "38392" (r5-cc-1).
- La banca e' fissata a
banca = 2nel codice. - L'importo in lettere viene prodotto da COGV75 su due righe da 50 caratteri (v75-tab8 e v75-tab9).
- Il parametro
tm-imp-s(importo da sottrarre) viene gestito con supporto multidivisa tramitez-u10-tm-imp-s-epeget-divisa-conto.