Vai al contenuto

ASN05I - Visualizza matricole su contratti

Intestazione

Campo Valore
Programma ASN05I
Titolo Visualizza matricole su contratti
Modulo Assist 2.0
Posizione menu Assist 2.0 > Archivi > Contratti > Visualizza matricole su contratti
Sorgente cbl/asn05i.cbl (~1.770 righe)
Tipo Programma interattivo a tab-control con filtri + griglia su file di transito

Scopo

Consultazione trasversale delle matricole abbinate ai contratti di assistenza. Estrae i record dalla collegamento ASNCNMTR (tipo 'C' = contratto) incrociando contratti (ASNCNTES / ASNCNTE2), matricole (ASNMATRI), dati anagrafici cliente (COGGEANA) e tipologie matricola (ASNMTRTP).

I risultati transitano per un file temporaneo (t-grid-det, alias di COGTRANS) e vengono mostrati su griglia con possibilita' di salvataggio filtri tramite IMPPREDF.


Flusso

  1. Init: z-99-init-program, ctr-abil, x99-confi, rd-azi, open-files
  2. Setup tasti e bitmap (Salva, Cerca impostazione, S-F2 filiera, F5 gestione matricola)
  3. Apertura file transito (z-grid-det-apri-transito + z-grid-det-crea-transito-init/fine)
  4. Caricamento filtro predefinito (z-imppredf-carica-default): se esiste, salta direttamente a a-controlla-filtri
  5. Pagina 1 - Filtri (a-pag-filtri): accept dei campi tm-fl-chiuso, tm-ana-cod, tm-data-da, tm-data-a, tm-id-contr, tm-agente, tm-sn, tm-amtr-tip
  6. Validazione filtri (a-controlla-filtri -> x-imposta-conferma)
  7. Caricamento dati (a-leggi-dati): chiama z-grid-det-crea-transito -> z-grid-ricerca-dati
  8. Pagina 2 - Risultati (a-pag-risultati -> a-grid): accept griglia con gestione tasti funzione

Logica di estrazione (z-grid-ricerca-dati)

Due percorsi:

  • Se tm-id-contr <> 0: legge il singolo contratto e salta a z-grid-ok-filtri
  • Altrimenti: scansione completa ASNCNTES con filtri progressivi:
  • Cliente (acnt-cli-fat-cod)
  • Stato contratto: gestione speciale per stato 'D' (disdetto) con acn2-data-scadenza
  • Periodo (acnt-data-da >= tm-data-da, w-acnt-data-a <= tm-data-a)
  • Agente del cliente (ana-agente su COGGEANA)

Per ogni contratto matchato, scan di ASNCNMTR con chiave secondaria (acnc-tip = 'C', acnc-id-contratto) per estrarre le matricole; per ogni matricola applica i filtri su serial number (amtr-sn) e tipo (amtr-tip).


File acceduti

File Record Modo Uso
ASNCNTES acnt-rec Input Testata contratto (rd / st-notmin / rdnxt)
ASNCNTE2 acn2-rec Input Estensione contratto - data scadenza disdetta
ASNCNMTR acnc-rec Input Collegamento contratto-matricola; chiave secondaria asncnmtr.k02
ASNMATRI amtr-rec Input Anagrafica matricola
ASNMTRTP amtp-rec Input Tipologia matricola (descrizione)
ASNCNCND acnd-rec Input Condizioni contratto (durata mesi) - pertinenza 'C'
COGGEANA ana-rec Input Anagrafica cliente (tipo 'C') e agenti (tipo 'F')
COGTABEL euta-rec Input Validazione agente (tipo k-euta-tipo-agente)
t-grid-det - I-O File transito (alias di COGTRANS) per la griglia

Chiavi secondarie: asncnmtr.k02.


Programmi chiamati (CALL)

Programma Scopo
COGU10W Lettura divisa di conto alla data (op. GetDivisaConto)
COGS65W Lookup cliente / agente (via z-s65-tm-ana-cod, z-s65-tm-agente)
COGE35 Lookup agente in tabella (F8 su agente)
ASN010 Lookup tipologia matricola (F8 su tipo matricola)
ASN200 Ricerca avanzata matricola (F9 su S/N)
ASN220 Ricerca avanzata contratto (F9 su Id contratto)
ASN030 Gestione matricola (F5 in griglia con asn030-modalita = 'M')
ASN050 Gestione contratto (F3 in griglia)
COGMA3 Navigazione filiera documenti (S-F2 in griglia, cogma3-doc-classe = "T")
GRIDADMN Amministrazione griglia (S-F4)
W$MENU Menu popup griglia
RNEWCONF Lettura configurazione (x99-confi, gruppo COGE)

Configurazioni (RNEWCONF)

x99-confi apre il gruppo k-pack-coge senza chiavi specifiche (la configurazione e' implicita - generica del package COGE).


Linkage

Programma standalone - utilizza solo wcont / wcont1. Non riceve input strutturato.


Tasti funzione

Tasto Contesto Funzione
F7 Filtri Conferma filtri e va a estrazione
F8 Filtri Aiuto cella (lookup tabellare)
F9 Filtri (Id contratto, S/N) Ricerca avanzata (ASN220 / ASN200)
F2 Filtri Torna al campo precedente
Ctrl+S Filtri Salva preset (z-imppredf-salva)
Ctrl+F Filtri Carica preset (z-imppredf-seleziona)
F3 Risultati Apre ASN050 sul contratto della riga
F5 Risultati Apre ASN030 sulla matricola della riga
S-F2 Risultati Apre COGMA3 (filiera) sul contratto
S-F4 Risultati GRIDADMN (configurazione colonne)
S-F5 Risultati Esporta griglia in Excel
ESC Risultati Torna a pagina filtri

Validazioni filtri

Campo Controllo (x-controlla-tm-*)
tm-ana-cod Lettura COGGEANA tipo 'C' -> ana-nome
tm-fl-chiuso Nessun controllo (combo)
tm-data-da / tm-data-a tm-data-da > tm-data-a -> errore
tm-id-contr Lettura ASNCNTES -> esistenza
tm-agente Lettura COGTABEL con k-euta-tipo-agente; poi COGGEANA tipo 'F' per descrizione
tm-sn Nessun controllo
tm-amtr-tip Lettura ASNMTRTP -> esistenza, popola tm-tipo-des

Limiti

Elemento Limite Costante
Elementi griglia 900 k-max-ele-tab

Note implementative

  • Il programma utilizza il pattern standard con tab-control (filtri + risultati) e file di transito (t-grid-det = COGTRANS con prefisso t-gor-r-).
  • La gestione dei filtri predefiniti (IMPPREDF) carica all'avvio l'impostazione di default dell'utente e permette di salvare/caricare configurazioni nominate.
  • Il valore acnt-fl-chiuso = 'D' (disdetto) con acn2-data-scadenza valorizzato richiede una logica di confronto della scadenza effettiva: usa w-acnt-data-a come data fine "reale".
  • L'agente sulla matricola NON e' filtrabile: il filtro tm-agente agisce sull'agente del cliente (ana-agente).
  • L'ordinamento iniziale della griglia e' fisso: cliente, id contratto, codice matricola, tutti ascendenti.

Copybook utilizzate

wgrave, wnscr, wopenf, wstato, cogazien, wgrid, utilgdad, utils52, utils65, utils93, utile35, utilu10, utilu20, utilasn010, utilasn030, utilasn050, utilasn200, utilasn220, utilcogma3, utilimppredf, utilncnf, k-tipi-cogtabel, asncnmtr.k02. Copybook .prc/.fd/.select/.wrk/.tm/.imppredf-wrk/.imppredf generate da Screens.