NUT021 - Gestione Altri Soggetti
Scopo
Programma interattivo per la gestione anagrafica degli "altri soggetti" usati nei flussi di home banking (controparti diverse da clienti e fornitori). Memorizza dati anagrafici, fiscali (P.IVA, C.F., stato), coordinate bancarie complete (IBAN italiano/estero, ABI/CAB, BIC/SWIFT) e conto transitorio contabile. Supporta inserimento, modifica, visualizzazione e cancellazione su NUTALTRI.
Contabilita' > Home banking > Archivi > Altri Soggetti
File e tabelle
| File |
Tipo |
Descrizione |
| FEURTAB |
Parametri |
File parametri di ambiente |
| NUTALTRI |
I-O |
Anagrafica altri soggetti (chiave als-chia = als-cod) |
| COGTABEL |
Input |
Tabella generica (province tipo 26, stati tipo 54) |
| COGGEANA |
Input |
Anagrafiche generiche (per conti collegati ad anagrafiche con pco-tipoanagr valorizzato) |
| COGPNCON |
Input |
Piano dei conti (verifica esistenza conto transitorio) |
Copybook
File e select
feurtab.fd, nut021.select — SELECT (cogtabel.fd, coggeana.fd, cogpncon.fd, nutaltri.fd)
nut021.fd — FD specifici del programma
nut021.wrk — working-storage generata da Screens
Working-storage standard
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy
cogconta.cpy, cogcont1.cpy — strutture contabilita'
k-u10.cpy — costanti formattazione importi
Utility
utillogo.cpy — gestione logo
utils52.cpy, utils54.cpy, utils67.cpy — interfacce subroutine S52/S54/S67
utilu10.cpy — utility importi
utilw161.cpy — utility ricerca CAP/localita' (WIN161)
utilf09.cpy — utility ricerca provincia (COGF09)
utilcogu03w.cpy — utility ricerca banca (COGU03W)
utile04.cpy, utile65.cpy — utility stati (COGE04) / causali (COGE65)
utilv04.cpy, utilzde.cpy — utility varie
Linkage
wcont.cpy, wcont1.cpy — stringhe di comunicazione
Screen
nut021-01.scr — screen section maschera GUI
Procedure
nut021.decla, nut021.prc
grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy, getdcont.cpy
CALL
| Programma |
Descrizione |
| WIN161 |
Ricerca CAP/localita' (F12) |
| COGF09 |
Ricerca provincia (F8 sul campo provincia) |
| COGE04 |
Ricerca stato/nazione (F8 su stato e stato IBAN) |
| COGE05 |
Validazione formale partita IVA / codice fiscale |
| COGU03W |
Ricerca banca tramite ABI/CAB |
| WIN193.COB |
Ricerca codice del soggetto (F8 sul codice) |
Logica di elaborazione
- Inizializzazione (
apri): apre file, attiva F3/F4/F8, carica bitmap custom "anagr" e crea pulsante custom "Ricerca C.A.P /Localita' (F12)" (w-pbc-exception = k-f12).
- Accept codice (
a-tm-als-cod): l'utente digita il codice. Su F8 richiama WIN193 per la ricerca. Su F2/Esc esce. Se il codice esiste su NUTALTRI (rd-nutaltri), esegue visualizza per caricare i dati e imposta fl-vario = "V" (modifica). Altrimenti fl-vario = "I" (inserimento), e disattiva F4.
- Sequenza accept campi (
a-tm-als-des ... a-tm-swift): navigazione sequenziale su descrizione, indirizzo, CAP (con F12 -> WIN161), localita' (con F12 -> WIN161), provincia (con F8 -> COGF09, F12 -> WIN161), stato (con F8 -> COGE04), P.IVA, codice fiscale (validazione formale via COGE05), e-mail, stato IBAN, CIN europeo, CIN italiano, ABI/CAB (tramite COGU03W), conto corrente, conto transitorio (mastro/conto/sottoconto), note (3 righe), telefono, fax, nota interna (= IBAN estero), SWIFT.
- Conferma finale (
a-fine-dati): esegue x-imposta-conferma che chiama tutti i controlli x-controlla-*. Se OK, esegue elab-finale:
- se F4 e' premuto in modifica:
acc-conf + del-nutaltri
- altrimenti
acc-conf + registra
- Registra (
registra): trasferisce i campi tm-als-* nel record als-rec. Se fl-vario = "I" esegue wr-nutaltri, altrimenti rwr-nutaltri.
- Visualizza (
visualizza): popola tutti i campi della maschera leggendo als-rec corrente e risolvendo le descrizioni correlate (provincia, stato, conto transitorio).
Validazioni principali
| Campo |
Regola |
| Codice |
Obbligatorio (tm-als-cod != 0) |
| Descrizione |
Obbligatoria |
| Indirizzo, CAP, Localita', Provincia |
Obbligatori; provincia deve esistere in COGTABEL tipo 26 ("P" + codice) |
| Stato |
Se valorizzato, deve esistere in COGTABEL tipo 54; determina tm-st-tip (I=italiano, E=estero) e tm-st-siz-piva |
| P.IVA / C.F. |
Almeno uno obbligatorio se tm-st-tip != "E"; entrambi validati formalmente da COGE05 |
| Stato IBAN |
Se valorizzato deve essere "IT" (per IBAN esteri usare campo tm-als-nota-interna) |
| Conto transitorio |
Mastro/conto/sottoconto devono esistere in COGPNCON; se il conto ha pco-tipoanagr valorizzato, il sottoconto deve esistere in COGGEANA |
| Nota 1 |
Obbligatoria |
Struttura dati in memoria
tab-maschera:
tm-als-cod pic 9(05) - codice soggetto
tm-als-des pic x(40) - descrizione/nome
tm-als-ind/loca pic x(40) - indirizzo, localita'
tm-als-prov pic x(02) - provincia (+ descrizione)
tm-als-cap pic 9(05) - CAP
tm-als-st-cod pic x(03) - codice stato (+ descrizione)
tm-als-piva pic 9(11) - partita IVA
tm-als-cofi pic x(16) - codice fiscale
tm-email pic x(50) - e-mail
tm-als-conto - mastro/conto/sottoconto + descrizione conto
tm-als-iban-st pic x(02) - stato IBAN (vincolato a "IT")
tm-als-iban-cin-e pic x(02) - CIN europeo
tm-als-iban-cin-it pic x(01) - CIN italiano
tm-als-abi/cab pic 9(05) - ABI/CAB
tm-als-ccorr pic x(12) - conto corrente
tm-als-nota-1/2/3 pic x(30) - note libere
tm-als-tel/fax pic x(10) - telefono/fax
tm-als-nota-interna pic x(30) - IBAN estero (alias)
tm-swift pic x(16) - codice BIC/SWIFT
Note tecniche
- Il campo
als-nota-interna e' "redefined" come als-iban-estero in NUTALTRI.cpy: lo stesso campo memorizza note interne oppure IBAN estero.
- Il campo
als-swift e' redefine di als-ccorr in NUTALTRI: SWIFT e conto corrente condividono lo spazio fisico. Il codice scrive tm-swift in als-swift solo se als-nota-interna (IBAN estero) e' valorizzato, mantenendo la coerenza fra alternative italiana/estera.
- Se il sottoconto del conto contabile e' di tipo anagrafico (
pco-tipoanagr != spaces), il programma forza als-sco = als-cod per allineare l'anagrafica al codice soggetto.
- F12 e' implementata come pulsante custom (non come tasto funzione standard):
w-pbc-exception = k-f12, w-pbc-idx = k-f12-cap-loc.
- Programma in stile GUI moderno con navigazione sequenziale a campo (non a griglia); dimensione sorgente: 86K, 2306 righe.
- Autore originario: Daniele.
- Usa estensivamente
GO TO e PERFORM ... THRU su controlla-tm-als-cod, carica-dati, elab-finale, registra (codice legacy).