Vai al contenuto

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.

  • 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

  1. Acquisizione parametri: intervallo documenti (tm-da-tip/tm-da-ann/tm-da-num a tm-a-tip/tm-a-ann/tm-a-num), numero assegno iniziale (tm-da-ass), importo da sottrarre (tm-imp-s).

  2. Validazione: anno obbligatorio (da e a), numero assegno iniziale obbligatorio. Il tipo "a" viene forzato uguale al tipo "da".

  3. Apertura stampante: COGS54 con emulazione EPSON e flag s54-fl-manual = "S". Stampa su file STA con linage 17 (17 righe per modulo assegno).

  4. Apertura archivio assegni: E4NUMASS in ext-arc-dir/e4numass.arc; se non esiste viene creato.

  5. Elaborazione (paragrafo a113 / a115):

  6. Posizionamento su COGFATTU con fat-tip = tm-da-tip, fat-ann = tm-da-ann, fat-num = tm-da-num.
  7. Lettura sequenziale fino a fat-num > tm-a-num o cambio tipo/anno.
  8. Per ogni documento: w-fat-importo-40 = fat-importo(40) - tm-imp-s.
  9. Se importo netto > 0:

    • Chiama sta-assegno per la stampa.
    • Chiama scrivi-file-numass per la registrazione.
    • Incrementa il numero assegno.
  10. Stampa assegno (paragrafo sta-assegno):

  11. Calcolo importo netto, conversione in lettere tramite COGV75 (v75-numero, v75-col0 = 50).
  12. 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).
  13. Salto pagina dopo ogni assegno.
  14. Accumulo totale in totale, conteggio in ctl.

  15. Registrazione assegno (paragrafo scrivi-file-numass):

  16. Scrittura su E4NUMASS con chiave ass-tip+ass-ann+ass-num dalla fattura, ass-numero dal numero assegno corrente, ass-importo dall'importo netto.
  17. Se la chiave esiste gia', esegue REWRITE.

  18. 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 = 2 nel 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 tramite z-u10-tm-imp-s-ep e get-divisa-conto.