ASN180 - Chiusura Chiamate¶
Intestazione¶
| Campo | Valore |
|---|---|
| Programma | ASN180 |
| Titolo | Chiusura Chiamate Risolte (o con tutti gli interventi Chiusi e Bolle Elaborate) |
| Modulo | Assist 2.0 |
| Posizione menu | Assist 2.0 > Operativo > Gestione Interventi a Richiesta > Chiusura Chiamate |
| Sorgente | cbl/asn180.cbl (2.183 righe) |
Scopo¶
Esegue la chiusura massiva di chiamate Assist in stato "Risolta" (acht-situazione = "R") oppure di chiamate con tutti gli interventi chiusi e bolla elaborata. Dispone di una modalita' di estrazione completa (TASK 080823) che recupera anche chiamate aperte del periodo e ne forza una chiusura coerente per bonifica/recupero dati.
Puo' essere chiamato da altri programmi (ASN180-CALLED) per la selezione di una chiamata; in tal caso ritorna asn180-id.
Flusso principale¶
- Inizializzazione, caricamento configurazione (
x99-confi) - Setup tasti funzione e pulsanti custom (F8 interventi, F5 inserimento intervento, F7 analisi, F1 galleria)
- Apertura file di transito
COGTRANSesclusivo per operatore (path<tmp>/#$trsasn180.<wo-oper>); errore se gia' in uso (stato 93) - Modalita' called: se ricevuto
w-dc-ana-cod-c-in, salta direttamente alla fase elaborazione - Input filtri:
- Id chiamata (se compilato: validato e inserito direttamente in COGTRANS come selezionato)
- Cliente (S65 help)
- Periodo chiamata da/a
- Ordinamento (
C= cliente+data;D= data+cliente) - Flag estrazione completa (TASK 080823)
- F3 conferma ->
carica-filepopola COGTRANS scansionando ASNCHTES con chiave 1, 3 o 6 a seconda dei filtri compilati - Per ogni record letto,
tratta-asnchtesdecide se scrivere su COGTRANS:acht-situazione = 'R'(Risolta) OPPURE- tutti gli interventi chiusi+bolla elaborata (
cerca-intervento-chiuso) OPPURE tm-fl-completa = "S"(estrazione completa)- Esclude sempre
acht-situazione = "Z"(chiamate fittizie per prestampa) - In estrazione completa: esclude le gia' chiuse ricontrollando lo stato effettivo degli interventi (
w-chiusa)
carica-tablegge COGTRANS via chiave alternativa (per ordinamento) e popola la griglia paginata- Selezione utente: Invio toggla
tmr-sel(SELEZIONATO/ spaces) e aggiorna COGTRANS - F3 finale:
aggiornascorre COGTRANS, per le righe selezionate:- Aggiorna ASNCHTES:
acht-situazione = "C",acht-chiu-data = datasis,acht-chiu-ora = orasis-oramin,acht-stato = tm-cfg-stato-evasa - In estrazione completa:
acht-chiu-data = acht-data(data chiamata) e settaacht-scad-data/oraeacht-operatorese mancanti chiudo-interventi: scorre ASNINTES, metteacit-stato = "C",acit-fl-risolutivo = "S"; in estrazione completa ancheacit-fl-bol = "E",acit-mag = az-main-mag, date di assegnazione/interventox-aggiorna-asninte2: insert/update di ASNINTE2
- Aggiorna ASNCHTES:
File e tabelle acceduti¶
| File | Record | Modalita' | Uso |
|---|---|---|---|
| ASNCHTES | acht-rec | I-O | Scan via chiavi 1/3/6, aggiornamento situazione/stato/chiusura |
| ASNINTES / ASNINTE2 | acit / acit2 | I-O | Chiusura interventi collegati (chiave 2) |
| ASNCHDET | achd-rec | Input | Lettura matricola collegata alla chiamata (chiave 2) per riga griglia |
| ASNMATRI | amtr-rec | Input | Marca / serial number per riga griglia |
| ASNMODEL | amod-rec | Input | Descrizione modello (chiave 2) |
| ASNTPATT | atpa-rec | Input | Colore riga (modalita' tipo attivita') |
| ASNPRIOR | apri-rec | Input | Colore riga (modalita' priorita') |
| ASNSTCHM | astc-rec | Input | Descrizione stato chiamata |
| COGGEANA | ana-rec | Input | Cliente assistito, fatturazione, fornitore |
| COGTABEL | euta-rec | Input | Descrizione zona (tipo 88) |
| COGRIFER | rif-rec | Input | Anagrafica tecnico |
| COGTRANS | trs-rec | I-O (esclusivo) | File di transito per la griglia paginata; chiave primaria trs-chia1 (= id), chiave alternativa trs-chia2 (con acht-cli-ass+acht-data o viceversa secondo ordinamento), duplicates |
Chiavi secondarie utilizzate¶
| Copybook | Tabella | Scopo |
|---|---|---|
cogtrans.k01 / k02 |
COGTRANS | Chiave primaria e alternativa |
asnintes.k02 |
ASNINTES | Loop interventi per chiamata |
asnchdet.k02 |
ASNCHDET | Dettaglio chiamata per matricola |
asnchtes.k03 / k06 / k07 |
ASNCHTES | Scan per cliente assistito / data / altri filtri |
asnmodel.k02 |
ASNMODEL | Modello da amtr-id-modello |
Programmi chiamati (CALL)¶
| Programma | Scopo |
|---|---|
| ASN210 | Ricerca avanzata chiamata (F9 su id) |
| ASN230 | Visualizzazione interventi per chiamata (F8 su riga) |
| ASN120 | Inserimento intervento (F5 su riga, solo classe "C") |
| ASN034 | Storico modifiche chiamata (F7 su riga) |
| ASN073 | Galleria immagini chiamata (F1 su riga, solo se az-arc-ott = "S") |
| COGS65W | Help cliente (F8 su filtro cliente) |
| COGW92 | (disponibile via utilw92 per F9 generica) |
| GRIDADMN | Configurazione griglia (Shift-F4) |
| DTPRG | Conversione data per calcolo giorni progressivi |
| RNEWCONF | Configurazione |
Disponibili tramite copybook ma non strettamente invocati nel flusso principale: ASN012, ASN013, ASN034, ASN041, ASN200, ASN015, ASN110, ASN500, F01.
Configurazioni¶
| Gruppo | Parametro | Variabile | Effetto |
|---|---|---|---|
ASSIST |
codice-stato-evasione |
tm-cfg-stato-evasa |
Codice stato chiamata assegnato alla chiusura. Se vuoto, lo stato non viene modificato |
assist |
tipo-colore-righe-vis-chiamate |
tm-cfg-tipo-colore |
A -> colore da tipo attivita' (atpa-colore); altrimenti da priorita' (apri-colore) |
Parametri di interfaccia (utilasn180)¶
| Campo | Direzione | Uso |
|---|---|---|
asn180-called |
Input | Se = "ASN180-CALLED" modalita' called |
asn180-caller |
Input | Programma chiamante |
asn180-ana-cli-in |
Input | Cliente da pre-filtrare |
asn180-id |
Output | Id chiamata selezionata (in modalita' called, su Invio) |
Logica di chiusura interventi (chiudo-interventi)¶
Scorre ASNINTES per acit-id-chiamata = acht-id. Per ogni intervento non chiuso:
acit-stato = "C"acit-fl-risolutivo = "S"
In estrazione completa, anche:
acit-fl-bol = "E"acit-mag = az-main-mag(se vuoto)acit-ass-data = acht-data,acit-ass-ora = orasis-oramin(se vuote)acit-int-data = acht-data,acit-int-ora = orasis-oramin
Quindi rwr-asnintes + x-aggiorna-asninte2 (insert se mancante + rewrite).
Tasti funzione¶
| Tasto | Contesto | Funzione |
|---|---|---|
| F1 | Tutti | Configurazione / Galleria immagini su riga (se arc-ott attivo) |
| F3 | Filtri | Conferma filtri (a a-fine-dati) |
| F3 | Griglia | Conferma chiusura selezionate |
| F5 | Griglia | Inserimento intervento (ASN120, solo classe "C") |
| F7 | Griglia | Analisi storica (ASN034) |
| F8 | Griglia | Visualizza interventi (ASN230) |
| F9 | Id chiamata | Ricerca avanzata (ASN210) |
| Shift-F4 | Griglia | Configurazione colonne |
| Shift-F5 | Griglia | Esporta in Excel |
| Pag su/giu' | Griglia | Paginazione |
| Invio / dblclick | Griglia | Toggle selezione riga |
| ESC | Tutti | Esci (chiede conferma se ci sono righe selezionate) |
Storico modifiche significative¶
24/06/2021 - Chiamate con interventi tutti chiusi¶
Aggiunto il paragrafo cerca-intervento-chiuso: una chiamata non in stato "R" viene considerata chiudibile se tutti gli interventi sono acit-stato = "C" e acit-fl-bol = "E". Gestita sia nella validazione id (x-controlla-tm-id-chiam) sia nello scan (tratta-asnchtes).
29/11/2013 - Chiusura interventi residui¶
Aggiunto chiudo-interventi: dopo la chiusura della chiamata, scorre gli interventi e ne forza la chiusura. Risolve il caso di stato chiamata "Risolutivo" applicato manualmente lasciando interventi aperti.
20/02/2014 - Colorazione righe configurabile¶
Configurazione tipo-colore-righe-vis-chiamate: scelta tra colore da tipo attivita' o da priorita'.
08/08/2023 - Estrazione completa (TASK)¶
Nuovo flag tm-fl-completa ("Estrazione completa"). Quando vale "S":
- Pre-seleziona automaticamente tutte le chiamate trovate
- Esclude le chiamate gia' chiuse ricontrollando lo stato effettivo degli interventi (non si fida del flag
acht-situazione) - Forza una chiusura "coerente" dell'intervento (date, bolla, magazzino) per recupero dati storici
- Imposta
acht-chiu-data = acht-dataper non concentrare in un giorno solo la chiusura di tutte le chiamate
04/09/2023 - Ricontrollo effettivo stato interventi¶
In modalita' estrazione completa, modificata l'esclusione delle gia' chiuse: anziche' affidarsi al flag situazione, scorre gli interventi per verificare che siano davvero tutti chiusi (flag w-chiusa).
Note di implementazione¶
- Pattern griglia paginata (
fscrol2.cpy,utilpggr.cpy) con buffer COGTRANS per gestione efficiente di liste estese - Apertura COGTRANS esclusiva per
wo-operper evitare conflitti tra sessioni dello stesso operatore - Le chiavi alternative di COGTRANS riflettono l'ordinamento richiesto (composizione
acht-cli-ass + acht-dataoacht-data + acht-cli-ass) - Il caricamento file usa tre rami (
tratta-chia1/tratta-chia3/tratta-chia6) per scegliere la chiave secondaria di ASNCHTES piu' efficiente in base ai filtri - Pulsanti custom: F8 (visualizza interventi, icona "assist" #20), F5 (inserisci intervento, icona "assist" #49), F7 (analisi, icona "assist" #30), F1 (galleria, icona "arcott" #3 se archivio ottico attivo)