Vai al contenuto

NUT023 - Condizioni Bancarie (banche assuntrici)

Scopo

Gestione del prospetto comparativo delle condizioni applicate dalle banche assuntrici. Griglia con 38 righe predefinite (definite hardcoded in w-tab-cnd) per le voci di condizione e fino a 10 colonne per le banche. I valori sono memorizzati in NUTCDBAN con chiave cdbn-tipo+cdbn-cod+cdbn-cnd+cdbn-data+cdbn-prog.

Vendite > Ricevute Bancarie > Tabelle > Condizioni Bancarie

File e tabelle

File Tipo Descrizione
FEURTAB Parametri File parametri di ambiente
NUTCDBAN Indicizzato Condizioni banca; chiave cdbn-tipo+cdbn-cod+cdbn-cnd+cdbn-data+cdbn-prog; valori cdbn-val-n (numerico) e cdbn-val-x (testo); colonna cdbn-colonna 1-10; colore cdbn-colore
NUTBANAS Indicizzato Anagrafica banche assuntrici (codice + descrizione)

Copybook

File e select

  • feurtab.fd, cogfiles.cpy
  • nut023.select, nut023.fd, nut023.wrk
  • nut023-01.scr, nut023.decla, nut023.prc
  • k-tipi-cogtabel.cpy

Working-storage standard

  • wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy

Utility

  • wgrid.cpy, utilgdad.cpy, utile04.cpy, utils67.cpy, utilu20.cpy, utilgcol.cpy, utilncnf.cpy

Linkage

  • wcont.cpy, wcont1.cpy
  • redefinition di user-area con util-nut022 (campo nut022-cod per integrazione)

Procedure finali

  • grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy

CALL

Programma Scopo
GRIDADMN Gestione griglia (Prepara)
GETCOLOR Selezione colore (F9 / F8 su cella riga/codice)
WIN023 (WIN023.COB) Ricerca banca assuntrice (F8 su riga 2)
RNEWCONF Lettura configurazioni abilita/bin-*, PROGCOGV97/gestione-riba, CASHFLOW/maturazione-sbf e CASHFLOW/recepisce-saldo-cc

Logica di elaborazione

  1. Inizializzazione (apri): apre file, legge azienda, legge configurazioni via x99-src-cfg.
  2. Caricamento struttura griglia: la tabella w-tab-cnd contiene 38 elementi hardcoded con cod (4 char), nat (N/X), um (E/% o spazio), des (60 char). Vengono copiati in tm-cod/tm-des/tm-um (righe 1-38) tramite loop varying.
  3. Caricamento valori esistenti: scan NUTCDBAN con cdbn-tipo="A"; per ogni record cerca la corrispondenza tm-cod = cdbn-cnd e in base a cdbn-colonna (1-10) sposta il valore formattato (format-numero) in tm-bancaN. Recupera anche tm-colore.
  4. Visualizzazione griglia (a30): costruisce griglia (z-costruisci-tm-tab) e applica colorazione (colora-riga).
  5. Loop principale (a-accept-grid):
  6. F3 → a1-aggiornab-aggiorna
  7. F9 → GETCOLOR per riga corrente
  8. F8 (riga banca 2) → send-scr-2 chiama WIN023.COB per selezione banca
  9. F8 su altre celle "banca" su riga 2 → idem (vedi z-usa-tf-tm-tab-ep)
  10. Aggiornamento (b-aggiornaupd-bancafill-banca):
  11. Per ogni riga i da 1 a 38, per ogni colonna 1-10 in cui la riga "banca" (riga 1) e' valorizzata
  12. Estrae codice banca da tm-bancaN(1) via unstring ... delimited "-"
  13. Legge NUTCDBAN; se trovato rwr-nutcdban altrimenti wr-nutcdban
  14. fill-banca valorizza: colonna, um, des, natura, val-n (se nat="N") o val-x, colore

Struttura dati in memoria

w-tab-cnd (38 elementi hardcoded):
  t-cnd-cod    PIC X(04)   — codice condizione (Annn / Cnnn / Rnnn)
  t-cnd-nat    PIC X(01)   — N=numerico, X=testo
  t-cnd-um     PIC X(01)   — E=euro/valuta, %=percentuale, spazio=N/A
  t-cnd-des    PIC X(60)   — descrizione voce

tab-maschera (da copybook nut023.wrk):
  tm-riga, tm-cod, tm-des, tm-um, tm-colore
  tm-banca1..tm-banca10 — valori per ciascuna delle 10 colonne banca

Configurazione

Lettura RNEWCONF: - abilita / bin-tipo, bin-db-path, bin-db-conn-string (idx 1-3), bin-db-log-level — integrazione SQL banche - PROGCOGV97 / gestione-riba → tm-cfg-tipo-riba - CASHFLOW / maturazione-sbf → tm-cfg-maturazione-sbf - CASHFLOW / recepisce-saldo-cc → tm-cfg-rice-saldo

Note tecniche

  • Le 38 voci di condizione sono hardcoded nel sorgente (w-tab-cnd): aggiungere/modificare voci richiede modifica del programma e ricompilazione.
  • Riga 38 (k-riga-cc) e' la "Saldo conto corrente"; se la configurazione CASHFLOW/recepisce-saldo-cc non e' "X", viene mostrato un avviso che il valore non sara' usato nel cash flow.
  • La modifica delle celle "banca" e' validata solo per w-cell-y = 2 (riga "Banca") e in modalita' aggiornamento ("A"); le altre righe accettano valori liberi senza controllo di codifica.
  • La griglia ha sempre 38 righe fisse — i tasti CTRL+A/CTRL+E sono commentati: non si possono aggiungere o eliminare voci dall'interfaccia.
  • Programma legacy con uso di GO TO; numerosi blocchi commentati testimoniano evoluzioni passate.