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¶
- Init:
z-99-init-program,ctr-abil,x99-confi,rd-azi,open-files - Setup tasti e bitmap (Salva, Cerca impostazione, S-F2 filiera, F5 gestione matricola)
- Apertura file transito (
z-grid-det-apri-transito+z-grid-det-crea-transito-init/fine) - Caricamento filtro predefinito (
z-imppredf-carica-default): se esiste, salta direttamente aa-controlla-filtri - Pagina 1 - Filtri (
a-pag-filtri): accept dei campitm-fl-chiuso,tm-ana-cod,tm-data-da,tm-data-a,tm-id-contr,tm-agente,tm-sn,tm-amtr-tip - Validazione filtri (
a-controlla-filtri->x-imposta-conferma) - Caricamento dati (
a-leggi-dati): chiamaz-grid-det-crea-transito->z-grid-ricerca-dati - 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 az-grid-ok-filtri - Altrimenti: scansione completa
ASNCNTEScon filtri progressivi: - Cliente (
acnt-cli-fat-cod) - Stato contratto: gestione speciale per stato
'D'(disdetto) conacn2-data-scadenza - Periodo (
acnt-data-da>=tm-data-da,w-acnt-data-a<=tm-data-a) - Agente del cliente (
ana-agentesuCOGGEANA)
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=COGTRANScon prefissot-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) conacn2-data-scadenzavalorizzato richiede una logica di confronto della scadenza effettiva: usaw-acnt-data-acome data fine "reale". - L'agente sulla matricola NON e' filtrabile: il filtro
tm-agenteagisce 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.