Vai al contenuto

COGF28 - Tipi di Pagamento

Sorgente: cbl/cogf28.cbl | Program-ID: COGF28 | Tipo: Programma interattivo (standalone, gestione tabella a griglia)

Menu: Contabilita' > Archivi & Tabelle > Tabelle > Parametri Pagamenti > Tipi di Pagamento


Scopo

Gestione della tabella delle condizioni (tipi) di pagamento, memorizzate in COGTABEL con euta-tipo = 22. Il programma presenta una griglia con l'elenco dei tipi di pagamento e consente inserimento, modifica e cancellazione di ogni riga tramite una schermata di dettaglio. Per ogni tipo si definiscono descrizione (estesa e breve), i flag di tipologia (Ri.Ba., Bonifico, RID, Contrassegno), i giorni "salvo buon fine", la modalita' di pagamento per la PA (codici MP00-MP22), il codice pagamento per Ri.Ba. (COGTABEL tipo 14, a scadenza unica), lo sconto Ri.Ba., la banca assuntrice (NUTBANAS) e, per i consorzi, la convenzione e il tipo valuta. Il programma puo' funzionare in modalita' autonoma (aggiornamento) oppure essere richiamato da un chiamante per la sola selezione di un codice (parametri f28-caller/f28-called).


File e tabelle

File/Tabella Tipo Modalita' Descrizione
FEURTAB Indexed Input Tabella nomi file
COGTABEL Indexed I-O Tabella generica contabilita': tipo 22 (tipi di pagamento, chiave euta-tipo/euta-cod), tipo 14 (codici pagamento per Ri.Ba., letti in euta-pg-*)
NUTBANAS Indexed Input Anagrafica banche assuntrici (descrizione e IBAN della banca abbinata)

Copybook utilizzate

Copybook Descrizione
feurtab.fd SELECT tabella nomi file
cogfiles.cpy Record FEURTAB
cogf28.select SELECT generati da Screens (COGTABEL, NUTBANAS)
cogf28.fd FD generati da Screens (COGTABEL, NUTBANAS)
cogtabel.fd FD/record COGTABEL (via cogf28.fd)
nutbanas.fd FD/record NUTBANAS (via cogf28.fd)
cogf28.wrk Working-storage generato da Screens
utilncnf.cpy Interfaccia lettura configurazioni (RNEWCONF)
utilagprg.cpy Interfaccia sincronizzazione applicativa (SWN063)
utilu20.cpy Utility gestione importi/percentuali COGU20
wstato.cpy Stato I/O
wgrave.cpy Gestione errori gravi
wgrid.cpy Gestione griglia (handle, colonne)
wopenf.cpy Apertura file
wnscr.cpy Dati schermo
utilw02.cpy Interfaccia ricerca codice pagamento (WIN002)
cogazien.cpy Dati azienda (es. az-consorzi)
utilgdad.cpy Interfaccia gestione griglia dinamica (GRIDADMN)
wcont.cpy Linkage stringhe comuni
wcont1.cpy Linkage area utente 2
utilf28.cpy Linkage di interscambio col chiamante (util-f28)
cogf28-01.scr Screen section generata da Screens
cogf28.decla Declaratives I/O (FEURTAB, COGTABEL, NUTBANAS)
stato.cpy / stato1.cpy Paragrafi controllo stato I/O
winmsg.cpy Messaggi a video
grave.cpy Paragrafi errori gravi
opengen.cpy Apertura file generica
mmmask.cpy Paragrafi init/exit programma
utilgrid.cpy Paragrafi di gestione griglia
cogf28.prc Paragrafi di supporto generati da Screens (controlli campi, colori, aiuti)
sendw02.cpy Paragrafo send-w02 (chiamata WIN002)

Logica di elaborazione

  1. Inizializzazione: lettura configurazione ABILITA/GRUPPO-AZIENDE (RNEWCONF, in tm-cfg-gruppo-aziende), caricamento lingua, apertura file, lettura dati azienda. Impostazione dei tasti funzione previsti. Se il programma e' richiamato (f28-called = COGF28 e f28-caller valorizzato) viene attivata la modalita' "Selezione" (w-dc-called = "S"), altrimenti "Aggiornamento".
  2. Caricamento tabella (par. a10): scansione di COGTABEL con euta-tipo = 22; per ogni record vengono valorizzati gli elementi della tabella interna tm-tab (max k-max-ele-tab = 900 righe). La modalita' PA euta-cp-mod-pag (MP00-MP22) e' mappata in un codice a un carattere (tm-pa-mod-pag), e viceversa in scrittura. La descrizione del codice pagamento Ri.Ba. viene risolta leggendo COGTABEL tipo 14 (euta-pg-des); la descrizione banca leggendo NUTBANAS.
  3. Visualizzazione griglia (par. a30/z-costruisci-grid): la griglia viene costruita e popolata tramite chiamate a GRIDADMN (operazioni "Prepara", "Svuota-Tutto", "Add-Record"). La colonna convenzione/valuta e' visibile solo se az-consorzi = "S".
  4. Loop principale (par. a-grid/a-accept-grid): accept sulla griglia. F3 commuta tra modalita' Selezione e Aggiornamento; Invio seleziona (in modalita' Selezione restituisce f28-out-cod/f28-out-des) o entra in modifica riga; Ctrl+A aggiunge, Ctrl+E elimina (con conferma). Sono presenti controlli di abilitazione utente (inserimento/modifica/cancellazione). Sf4 apre l'amministrazione griglia (GRIDADMN via util-gdad).
  5. Dettaglio riga (par. da a-tm-cod a a-tm-ban-cod): accept sequenziale dei campi con controlli per campo (x-controlla-*) e colorazione. F8 richiama i popup di aiuto: WIN002 per il codice pagamento Ri.Ba., WIN023.COB per la banca assuntrice. Sono gestiti spostamenti col mouse (x-test-mouse) e la navigazione con F2.
  6. Controlli: codice e descrizioni obbligatori; unicita' del codice in inserimento; i flag Ri.Ba./RID/Bonifico sono mutuamente esclusivi (x3-controlla-flag); il codice pagamento Ri.Ba. deve esistere (tipo 14) ed essere a scadenza unica (euta-pg-n-rate = 1).
  7. Salvataggio riga (par. a-riga-fine): richiesta conferma, aggiornamento della griglia via GRIDADMN ("Add-Record"/"Modify-Record") e scrittura su COGTABEL (wr-cogtabel in inserimento, rwr-cogtabel in modifica), con gestione dei casi record gia' esistente/cancellato. Dopo la scrittura viene invocata la sincronizzazione KPN (x-sincronizza-kpn).
  8. Cancellazione (par. c-cancella): rilettura con lock e del-cogtabel, seguita da sincronizzazione KPN.
  9. Gruppo aziende: i paragrafi a-sincronizza-aziende-gruppo/a-cancella-aziende-gruppo eseguono unlock all solo se tm-cfg-gruppo-aziende non e' "N".
  10. Chiusura (par. fine/z-chiudi): chiusura file e finestra, uscita.

Chiamate a sottoprogrammi

Programma Scopo
GRIDADMN Gestione dinamica della griglia (preparazione, svuotamento, aggiunta/modifica record, amministrazione colonne)
RNEWCONF Lettura configurazione ABILITA/GRUPPO-AZIENDE
WIN002 Popup di ricerca del codice pagamento Ri.Ba. (via send-w02)
WIN023.COB Popup di ricerca della banca assuntrice
SWN063 Sincronizzazione applicativa con KPN (esporta chiave euta-key)