ASN110 -- Inserimento/Gestione Chiamata Assist 2.0¶
Sorgente: cbl/asn110.cbl | Tipo: Programma interattivo a maschera (Assist 2.0) | Program-ID: ASN110
Scopo¶
Programma principale di gestione delle chiamate di assistenza (Assist 2.0): consente l'inserimento di una nuova chiamata, la sua modifica, la creazione/gestione degli interventi collegati, l'aggancio a contratti, ordini, commesse e matricole. E' il punto operativo di riferimento per il front-end degli operatori del call center.
Posizione menu: Assist 2.0 > Operativo > Gestione Interventi a Richiesta > Inserimento/Gestione Chiamata.
File e tabelle principali¶
| Tabella | Ruolo |
|---|---|
ASNCHTES (acht-*) |
Testata chiamata |
ASNINTE / ASNINTE2 (acit-*) |
Interventi della chiamata |
ASNCONT / ASNCN2 (acnt-*, acn2-*) |
Contratti di manutenzione |
ASNCHORD (acho-*) |
Aggancio ordini ad una chiamata |
| ASNCHRIP / ASNCHRID | Catena riparazioni |
COGTESOR / COGTORAG / COGRIGOR (tor-*, tar-*, ror-*) |
Ordini cliente collegati alla chiamata |
COGGEANA (ana-*) |
Anagrafica clienti (assistito / fatturazione) |
| COGTABEL | Tabelle di servizio (stati chiamata, priorita', tipi attivita', ...) |
| ARCMATRICOLE | Matricole su cui si interviene |
Flussi principali¶
| Fase | Descrizione |
|---|---|
a-tm-data ... a-tm-mag |
Inserimento dati testata chiamata |
x-controlla-tm-oggetto / x-controlla-tm-note |
Controlli su Oggetto e Descrizione |
x-aggiorna-asninte2 / x-aggiorna-tutti-asninte2 |
Allineamento campi su interventi collegati (es. testata cambiata) |
Sezioni di ricerca contratto (acnt-/acn2-) |
Verifica copertura contrattuale per la data chiamata |
Aggancio ordini (SELEZIONE chiamata COGO40) |
Collega un ordine esistente alla chiamata |
Modifiche introdotte (build 2026-06-04)¶
TASK-5137 -- Modifica Oggetto/Descrizione su chiamata chiusa¶
In precedenza, una volta che la chiamata era passata in stato acht-situazione = "C" (chiusa), i campi Oggetto (tm-oggetto / acht-oggetto) e Descrizione (tm-note / acht-note) erano di sola lettura. Con TASK-5137:
- Sui paragrafi
a-tm-oggettoea-tm-note, alla pressione di F3 conacht-situazione = "C"viene eseguito il controllo di validita' e, se ok, si salta direttamente alla data (go to a-tm-data) senza passare per la routine dictrl-modificastandard (che ne blocca l'editing). - I paragrafi
x-controlla-tm-oggettoex-controlla-tm-noterileggonoasnchtesper la chiave corrente; se la chiamata e' chiusa e il valore digitato differisce da quello su file: - Viene chiesta conferma all'operatore con messaggio
"Chiamata chiusa: confermi la variazione dell'oggetto della chiamata?"(analogo per la descrizione) - Su F3 viene aggiornato
acht-oggetto/acht-notee riscritto il record conrwr-asnchtes - Viene impostato il flag locale
w-fl-call-swn937 = "S"e chiamatox-aggiorna-tutti-asninte2 - Al termine
w-fl-call-swn937viene riazzerato
Il flag w-fl-call-swn937 (nuovo, pic x(01)) e' visibile solo all'interno del programma e serve a pilotare la chiamata a SWN937 (vedi sotto) nel ciclo x-aggiorna-tutti-asninte2.
Chiamata a SWN937 (sync KPN)¶
All'interno del loop di x-aggiorna-tutti-asninte2, dopo perform x-aggiorna-asninte2, e' stato aggiunto:
if tm-cfg-aggiorna-postgres-online = "S" and
w-fl-call-swn937 = "S"
move acht-cli-ass to utilswa-cli
move k-program-id to utilswa-called
move acit-id to utilswa-id-intervento
move acht-id to utilswa-num-attivita
call "SWN937" using stringhe
cancel "SWN937"
end-if
Solo se la configurazione aggiorna-postgres-online e' attiva (sincronizzazione real-time verso il DB KPN) e se la modifica e' partita da TASK-5137 (flag S), viene chiamato il nuovo sottoprogramma SWN937 per sincronizzare le note correlate verso ARPINTES su KPN.
TASK-4832 -- Contratto rinnovato non scaduto¶
Le sezioni di verifica del contratto di manutenzione (6 occorrenze nel codice) sono state armonizzate. Per ogni contratto candidato, prima del confronto con tm-data, ora si esegue:
if acnt-rinnovato = "S"
if tm-data >= w-acnt-data-da and
tm-data <= w-acnt-data-a
move spaces to acnt-rinnovato
end-if
end-if
Effetto: un contratto con flag acnt-rinnovato = "S" ma con tm-data interno alla finestra w-acnt-data-da..w-acnt-data-a viene "declassificato" a non-rinnovato, e quindi resta candidato all'aggancio. Prima di TASK-4832 i contratti rinnovati venivano scartati a prescindere dalla data, perdendo la copertura nella finestra di validita' residua.
TASK-5052 -- Aggancio ordine al cliente assistito + descrizione su ordine¶
Nella sezione di aggancio ordine cliente alla chiamata (chiamata a COGO40 con o40-operazione = "SELEZIONE"):
- L'intera logica
if tm-cli-fat not = zero / move tm-cli-fat to o40-cli-main / else / move tm-ass-cod to o40-cli-maine' stata sostituita con la solamove tm-ass-cod to o40-cli-main. La ricerca degli ordini disponibili si basa quindi sempre sul cliente assistito, indipendentemente dall'eventuale cliente di fatturazione. - E' stato disattivato il controllo che impediva di agganciare un ordine intestato al cliente assistito quando esisteva un cliente di fatturazione (
if tor-clifor not = tm-cli-fat ... "Ordine non del cliente fatturazione"). Resta attivo solo il controllotor-clifor not = tm-ass-cod("Ordine non del cliente assistito"). - Dopo
move "M" to acho-tip / perform wr-asnchord(registrazione suASNCHORD), e' stato aggiunto un blocco di scrittura della stringa"Chiamata:NNNN"intor-descr(e poi intor-descr1se la prima e' piena) conperform rwr-cogtesor. La stringa viene appesa nel primo spazio libero (cercato conperform varying w-i from 50 by -1 until w-i = 0 or tor-descr (w-i:1) not = spaces), in modo che sull'ordine sia immediatamente visibile il collegamento alla chiamata.
Messaggio "Chiamata Chiusa" -- estensione¶
Il messaggio mostrato quando si tenta di lavorare su una chiamata chiusa e' stato esteso da 'Stato Chiamata' e 'Riferimento chiamata cliente' a 'Stato Chiamata' + 'Riferimento chiamata cliente' + 'Oggetto' + 'Descrizione chiamata', coerentemente con la nuova abilitazione introdotta da TASK-5137.
Configurazioni rilevanti¶
| Gruppo | Chiave | Effetto |
|---|---|---|
| (area apostgres) | aggiorna-postgres-online |
Se "S", abilita la sincronizzazione real-time verso KPN. Controlla la chiamata a SWN937 |
| ... | (altre configurazioni esistenti immutate da queste modifiche) |
Storico modifiche¶
| Build | Descrizione |
|---|---|
| 2026/0508 | TASK-4832: contratti acnt-rinnovato = "S" non vengono piu' scartati a prescindere; restano agganciabili se tm-data e' interno a w-acnt-data-da..w-acnt-data-a (6 sezioni di scan contratti aggiornate) |
| 2026/0513 | TASK-5052: aggancio ordine sempre su tm-ass-cod, eliminata branca su tm-cli-fat; aggiunta scrittura "Chiamata:NNNN" su tor-descr/tor-descr1 al momento dell'aggancio (rwr-cogtesor) |
| 2026/0604 | TASK-5137: abilitata modifica di Oggetto e Descrizione anche con chiamata chiusa, previa conferma operatore; introduzione flag w-fl-call-swn937 e chiamata a SWN937 (se aggiorna-postgres-online = "S") per propagare le variazioni a KPN. Messaggio "Chiamata Chiusa" esteso ai campi Oggetto/Descrizione |