ASN05H — Inserimento chiamata programmata da contratto¶
| Campo | Valore |
|---|---|
| Sorgente | cbl/asn05h.cbl |
| Program-ID | asn05h |
| Tipo | Programma GUI standalone (maschera), chiamato using stringhe |
| Posizione menu | Nessuna (non presente in prog.txt): richiamato all'interno del flusso chiamate/contratti quando modo-programmazione = "B" |
Scopo¶
ASN05H consente di inserire manualmente la "prossima" chiamata programmata collegata a un
contratto, partendo da un intervento gia' chiuso. E' abilitato solo quando la configurazione
modo-programmazione delle chiamate vale "B" (programmazione "a intervento", in cui la chiamata
successiva viene generata al termine di quella precedente): all'avvio, se modo-programmazione e'
diverso da "B", il programma mostra "Programma non abilitato !! modo programmazione chiamate
diverso da 'B'" ed esce.
L'operatore indica l'intervento di riferimento (o lo cerca con F9); dopo i controlli di ammissibilita'
e la conferma, il programma delega la creazione della nuova chiamata programmata alla subroutine
ASN053 (operazione CREA-PROSSIMA) e comunica il numero e la data della chiamata generata.
Configurazione (x99-confi, RNEWCONF)¶
Le configurazioni sono lette via RNEWCONF (area util-ncnf, package "C"):
| Gruppo | Chiave | Campo working | Uso |
|---|---|---|---|
ass-contr |
modo-programmazione |
tm-cfg-modo-programmazione |
Abilitazione del programma: deve valere "B", altrimenti il programma non parte |
assist |
chiamate-programmate-provenienza |
tm-cfg-program-prov |
Provenienza attesa per riconoscere una "chiamata programmata" da contratto (confronto con acht-provenienza) |
Il tasto F1 riapre la maschera di configurazione (RNEWCONF in modalita' Modifica).
Struttura e flusso¶
Programma a maschera singola (screen asn05h-01.scr), con impianto GUI standard (mmmask.cpy,
z-99-init-program / z-99-exit-program).
apri— controllo abilitazioni, init programma, apertura file, lettura azienda, lettura configurazioni (x99-confi) e verificamodo-programmazione = "B"; apertura log di debug (gesdebug), abilitazione tasti funzione F1/F3/F9, titolo "Inserimento chiamata da contratto".a-tm-id— accept dell'Id intervento (tm-id). Tasti: F9 = ricerca avanzata interventi (ASN230), F1 = configurazione, gestione ESC/mouse (x-test-mouse). Alla conferma eseguex-controlla-tm-id.x-controlla-tm-id— controlli di ammissibilita' dell'intervento (vedi sotto). Se validi, valorizza e visualizza contratto, chiamata, cliente assistito e cliente di fatturazione.a-richiesta-conferma— richiesta di conferma "Confermi Inserimento Chiamata Programmata per il contratto indicato?" (acc-conf-custom).a-avanti— legge la testata intervento (asnintes/acit) e la testata chiamata (asnchtes/acht), poi chiama ASN053 conasn053-operazione = "CREA-PROSSIMA", passando contratto (acht-id-contratto) e intervento (tm-id). In caso di esito negativo (asn053-esito = "N") segnala "Nuova chiamata programmata da contratto NON Inserita !!"; altrimenti legge la nuova chiamata (asn053-nuova-chiamata) e ne mostra numero e data.fine/z-chiudi— chiusura file, log, finestra,exit program.
Controlli sull'intervento (x-controlla-tm-id)¶
La chiamata viene ammessa solo se, in sequenza:
- l'intervento esiste su
asnintes(acit); - l'intervento e' in stato "Chiuso" (
acit-stato = "C"), altrimenti "Intervento non e' in stato 'Chiuso'!!"; - la chiamata collegata esiste su
asnchtes(acht); - la chiamata e' collegata a un contratto (
acht-id-contratto <> 0); - la chiamata e' una chiamata programmata da contratto (
acht-provenienza = tm-cfg-program-prov); - la chiamata non e' gia' collegata a una chiamata successiva (
asnchplk/acpk,acpk-id-sucessiva): in caso contrario "la chiamata e' gia' collegata ad una chiamata successiva ...".
Tabelle utilizzate¶
| Tabella | Accesso | Descrizione |
|---|---|---|
| FEURTAB | Lettura | Tabella parametri (aperta via feurtab.fd / cogfiles.cpy) |
ASNINTES (acit-) |
Lettura | Testata interventi (rd-asnintes): stato, id chiamata, id contratto |
ASNCHTES (acht-) |
Lettura | Testata chiamate (rd-asnchtes): contratto, provenienza, cliente assistito/fatturazione |
ASNCHPLK (acpk-) |
Lettura | Collegamento chiamate (rd-asnchplk): verifica chiamata successiva gia' esistente |
COGGEANA (ana-) |
Lettura | Anagrafica generica (rd-coggeana): descrizione cliente assistito / cliente di fatturazione |
Programmi chiamati¶
| Programma | Interfaccia | Scopo |
|---|---|---|
| ASN053 | utilasn053.cpy (util-asn053) |
Creazione della prossima chiamata programmata da contratto (operazione CREA-PROSSIMA); restituisce esito, id nuova chiamata e messaggio |
| ASN230 | utilasn230.cpy (util-asn230) |
Ricerca avanzata interventi (F9); restituisce l'intervento selezionato (asn230-id-inter-ou) |
| RNEWCONF | utilncnf.cpy (util-ncnf) |
Lettura/gestione delle configurazioni ass-contr e assist |
Copybook principali¶
| Copybook | Ruolo |
|---|---|
feurtab.fd, cogfiles.cpy |
FD tabella parametri |
asn05h.select, asn05h.fd, asn05h.wrk, asn05h.decla, asn05h.prc, asn05h-01.scr |
File gestiti da Screens (select, FD, working, declaratives, procedure, screen) |
k-u10.cpy, k-personal.cpy, costanti-assist.cpy |
Costanti controllo U10, personalizzazioni azienda, costanti Assist |
utilasn230.cpy, utilasn053.cpy, utilncnf.cpy |
Interfacce delle subroutine chiamate |
utils52.cpy |
Interfaccia gestione date (COGS52W) |
wgrid.cpy, utilgdad.cpy, utildlg.cpy |
Gestione griglia/dialog GUI |
wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy, cogazien.cpy |
Working-storage standard (errori, video, apertura file, stato verbi, dati azienda) |
wcont.cpy, wcont1.cpy |
Area di contesto in linkage (stringhe) |
grave.cpy, mmmask.cpy, opengen.cpy, stato.cpy, stato1.cpy, winmsg.cpy, gesdebug.cpy |
Copybook di procedure standard |
Note¶
- Programma non a menu: e' un tassello del flusso "modo programmazione B" delle chiamate da contratto e per questo non ha documentazione utente dedicata. La logica di programmazione delle chiamate e la scelta del modo sono gestite altrove (cfr. ASN05A "Cambio modo programmazione").
- La creazione vera e propria della nuova chiamata e la gestione delle regole di contratto sono delegate interamente ad ASN053; ASN05H svolge selezione, controlli di ammissibilita' e conferma.
- I controlli richiedono che l'intervento sia chiuso e che la sua chiamata sia una chiamata programmata da contratto non ancora "proseguita": si evita cosi' di duplicare la catena di chiamate programmate.