CRM022 - Allineamento attivita' / destinatari CRM¶
Funzione¶
Utilita' di allineamento tra le attivita' CRM (CRMATTIV) e i relativi record di destinatario/operatore interessato (CRMATTOP). Il programma scorre tutte le attivita' presenti e, per ciascuna che non ha almeno un record destinatario collegato, ne crea uno derivandone i dati dalla testata dell'attivita'. Serve a riparare situazioni in cui esistono attivita' "orfane" prive del corrispondente operatore interessato.
Menu¶
- CRM > Utilita' > All. Attivita'/Destinatari
Tabelle e file principali¶
| Tabella/File | Descrizione | Accesso |
|---|---|---|
| FEURTAB | Tabella file aziendali | Lettura (rd-azi) |
| CRMATTIV | Attivita' CRM (testata) | Lettura sequenziale (st-crmattiv-notmin / rdnxt) |
| CRMATTOP | Operatori/destinatari interessati all'attivita' | Lettura (st/rdnxt) e scrittura (wr-crmattop) |
Copybook e sottoprogrammi¶
| Elemento | Tipo | Ruolo |
|---|---|---|
| crm022.select / .fd / .wrk / .prc / .decla / -01.scr | Screen | Definizioni file, working, screen |
| wgrave.cpy, wnscr.cpy, wopenf.cpy, wstato.cpy | Copybook | Working-storage standard |
| cogazien.cpy | Copybook | Dati azienda |
| stato / stato1 / winmsg / grave / opengen / mmmask | Copybook | Chiusura procedure division / utility maschera |
Il programma non effettua CALL a sottoprogrammi esterni: tutta l'elaborazione e' locale su CRMATTIV/CRMATTOP.
Logica principale¶
- Apri: init, controllo abilitazione, lettura azienda, open files, titolo e maschera. Predispone il solo tasto F3 (conferma).
- Conferma (F3): azzera i contatori
tm-a-l(attivita' lette) etm-a-a(attivita' allineate/aggiunte), quindi apre la scansione di CRMATTIV const-crmattiv-notmine ciclordnxt-crmattiv. - Per ogni attivita':
- incrementa
tm-a-le lo visualizza a video; - cerca un destinatario con
st-crmattop-notmin+rdnxt-crmattop: se esiste gia' un CRMATTOP concrp-num = crt-num, salta all'attivita' successiva; - altrimenti crea un nuovo CRMATTOP valorizzando numero, operatore, tipo,
data/ora, data/ora esecuzione, flag esecuzione dalla testata attivita', con
flag allarme ed esito impostati a "N", e lo scrive (
wr-crmattop); - incrementa
tm-a-ae lo visualizza. - Gestione ESC durante l'elaborazione: ogni volta che il contatore delle
aggiunte raggiunge un multiplo (unita' = 0) esegue un accept non bloccante
(
before time 1); se l'utente preme ESC chiede conferma di interruzione e, se confermata, mostra un messaggio informativo e termina. - Fine ciclo (a-99): al termine della scansione chiude e ritorna al chiamante.
Note tecniche¶
- Non esiste selezione per periodo o per nominativo: l'allineamento e' massivo su tutte le attivita' presenti in CRMATTIV.
- Il criterio di "presenza destinatario" e' l'esistenza di almeno un CRMATTOP con lo stesso numero attivita'; non verifica la coerenza dei singoli campi dei destinatari gia' presenti.
- I nuovi CRMATTOP creati ereditano l'operatore dalla testata attivita'
(
crt-ope), quindi rappresentano l'operatore che ha generato l'attivita'. - I contatori a video (attivita' lette / aggiunte) danno riscontro dell'avanzamento; l'operazione e' interrompibile con ESC.
- L'operazione e' additiva (solo inserimenti, nessuna cancellazione), quindi ripetibile: una seconda esecuzione non ricrea destinatari gia' presenti.