Vai al contenuto

CRMS08: Operazioni su attività CRM

Posizione nel menu Programma non a menu Linkage section

Tipo Dato Formato Contenuto
INPUT CRMS06-OPE x(20) Operazione da eseguire
Vedi argomenti successivi
CRMS08-ANA Riferimento anagrafico interessato all'operazione

x(01)

9(05)
CRMS08-NOM 9(08) Riferimento nominativo interessato all'operazione
E' in alternativa a CRMS08-ANA
CRMS08-TIP x(02) Tipologia attività
CRMS08-OGGETTO x(60) Oggetto dell'atttività
CRMS08-TESTO x(2000) Testo da inserire nell'attivita'
CRMS08-OPE-AUT 9(03) Operatore autore dell'attivita
CRMS08-OPE-DST 9(03) Operatore destinatario dell'attivita
CRMS08-FL-ESEGUI x(01) L'attivita' deve essere eseguita? S/N (Default=N)
CRMS08-ALLEGATO x(256) Nome file da allegare all'attività
CRMS08-ALL-CS x(01) Indica se il nome file allegato è in modalità:


CRMS08-ALL-TIP-DOC x(02) Tipo documento allegato (vedi COGU06-DO-TIP-DOC)
CRMS08-DOSSIER Dossier a cui agganciare l'attività

x(03)

9(12)
CRMS08-DSR-ID x(30) ID dossier a cui agganciare l'attivita'
Da fornire eventualmente in alternativa a CMS08-DOSSEIR
CRMS08-CREA-NOM-MANCANTE x(01) Nel caso in cui venga passato il riferimento ad un cliente anagrafico (CRMS08-ANA) e non viene trovato il nominativo collegato, se questo campo contiene "S" verra' creato il nominativo automaticamente
CRMS08-ALL-PROTOCOLLO-MANUALE x(20) Nel caso in cui venga creato un allegato: "Numero protocollo manuale"
CRMS08-ALL-DES x(80) Nel caso in cui venga creato un allegato: Descrizione da mettere
CRMS08-ALL-CLASSE x(03) Nel caso in cui venga creato un allegato: classe
CRMS08-ALL-SUBCLASSE x(03) Nel caso in cui venga creato un allegato: sottoclasse
CRMS08-DATI-ALLARME Dati per la definizione dell'allarme (vedi CRMATTOP)

x(01)

9(08)

9(04)
CRMS08-CLASSE-ATT x(01) Indica se dovrà essere creata un'attività di tipo:


CRMS08-FINE-APP Data/ora fine attività, nel caso di attività "Agenda"

9(08)

9(04)
CRMS08-ASSEGNAZIONE Data ora assegnazione attività

9(08)

9(04)
CRMS08-GRP-OPE-DST x(04) Gruppo di operatori destinatari dell'attività, alternativo a CRMS08-OPE-DST
CRMS08-CODICE-GIRO x(10) Codice giro a cui è associata l'attività
CRMS08-STATO-ATTIVITA x(02) Stato attività
CRMS08-CATEGORIA x(02) Categoria attività
OUTPUT CRMS08-STATO x(02) Stato dell'operazione, restituito con le stesse modalita' di operazioni su file
CRMS08-MSG x(80) Messaggio restituito, in caso di esito <> "00"
CRMS08-ATTIVITA-CREATA 9(12) Numero attivita' creata

Logica generale Questa routine serve per creare una nuova attività.

Operazione: SCRIVI

Descrizione Creazione di una nuova attività. E' possibile inserire attivita' di qualunque tipo, anche se per il momento sussistono le seguenti limitazioni: * Un solo operatore destinatario * Un solo nominativo collegato * Un solo allegato * Non è possibile al momento inserire attività in agenda Chiamata standard

Dato
CRMS06-OPE
CRMS08-ANA


CRMS08-NOM
CRMS08-TIP
CRMS08-OGGETTO
CRMS08-TESTO
CRMS08-OPE-AUT
CRMS08-OPE-DST
CRMS08-FL-ESEGUI
CRMS08-ALLEGATO
CRMS08-ALL-CS
CRMS08-ALL-TIP-DOC
CRMS08-DOSSIER


CRS08-DSR-ID
CRMS08-CREA-NOM-MANCANTE
CRMS08-ALL-PROTOCOLLO-MANUALE
CRMS08-ALL-DES
CRMS08-ALL-CLASSE
CRMS08-ALL-SUBCLASSE
CRMS08-DATI-ALLARME



CRMS08-CLASSE-ATT
CRMS08-FINE-APP
CRMS08-ASSEGNAZIONE
CRMS08-DSR-ID
CRMS08-ATT-DATA
CRMS08-CODICE-GIRO
CRMS08-STATO-ATTIVITA
CRMS08-CATEGORIA
CRMS08-CLASSE-ATT

Elaborazione Vediamo nel dettaglio i vari aggiornamenti effettuati, in funzione dei dati passati in input: A - Creazione nominativo mancante Se viene passato in input il flag opportuno CRMS08-CREA-NOM-MANCANTE, nel caso in cui in input è stato passato un codice anagrafico (CRMS08-ANA) e questo non risulta collegato ad un nominativo, verrà creato con una chiamata a CRMS03, e quindi collegato al codice anagrafico. B - Creazione attività Aggiornamento comune in tutti i casi, crea la parte centrale dell'attività: * Inserimento CRMATTIV * Aumenta il numero attività sull'utente attivo (su CRMUSERS) * Inserimento CRMATTNT (note attività) se presente CRMS08-TESTO * Inserimento operatore destinatario: creazione di CRMATTOP * Aggiornamento stringhe di ricerca attività con CRMS21 Nuovo: se significativo CRMS08-ASSEGNAZIONE, dovrà essere usato al posto di data/ora sistema nei campi dell'attività D - Collegamento a dossier Se CRMS08-DSR-NUM significativo, verrà creato: * il collegamento con il dossier, inserendo un record su CRMDOSAT * il collegamento tra il nominativo relativo all'attività e il dossier su CRMDOSAN * Nuovo: Aggiornamento dei nuovi campi: * DSV-ATT-TIP: CRMS08-TIP * DSV-NOM: nominativo E - Allegato Se richiesto (CRMS08-ALLEGATO <> " "), verrà archiviato l'allegato usando COGU06 F - Attività "agenda" Se CRMS08-CLASSE-ATT = "G" significa che l'utente ha richiesto di creare un appuntamento in agenda; quindi in aggiunta agli aggiornamenti precedenti, si dovrà * Inserire un record su CRMAGAPP (riepilogo appuntamento su agenda) * Aggiornare/inserire CRMAGCAL (spazi su calendario per operatore) * Inserire CRMAGASP (dettaglio spazi occupati per un appuntamento) Assegnazione Diamo per scontato che il calendario di un utente sia suddiviso sempre in spazi da 15 minuti ciascuno. Quindi come prima cosa se necessario dovremo normalizzare l'orario di un appuntamento in funzione di questi spazi: un appuntamento che va dalle 9:10 alle 10:25, occuperà quindi gli spazi: * 9:00 - 9:15 * 9:15 - 9:30 * 9:30 - 9:45 * 9:45 - 10:00 * 10:00 - 10:15 * 10:15 - 10:30 Dopodichè, se dovremo aggiornare un appuntamento come questo sulla base dati, gli aggiornamenti saranno (evidenzio in corsivo la parte chiave): F.1 - Inserimento CRMAGASP Dovremo inserire tanti record quanti sono gli spazi occupati (in questo caso 6);

Dato Record 1 Record 2 Record 3 Record 4 Record 5 Record 6
ASP-ATT Numero attività Numero attività Numero attività Numero attività Numero attività Numero attività
ASP-OPE Operatore destinatario Operatore
destinatario
Operatore
destinatario
Operatore
destinatario
Operatore destinatario Operatore destinatario
ASP-DATA Data appuntamento Data appuntamento Data appuntamento Data appuntamento Data appuntamento Data appuntamento
ASP-ORA 09:00 09:15 09:30 09:45 10:00 10:15

F.2 - Aggiornamento/inserimento CRMAGCAL Dovremo inserire o aggiornare tanti record quanti sono gli spazi occupati (in questo caso 6); NB: generalmente questi record, che rappresentano il calendario, saranno presenti se è già stato generato il calendario per il periodo su cui viene inserito l'appuntamento. Altrimenti sarà necessario inserire i record mancanti.

Dato Record 1 Record 2 Record 3 Record 4 Record 5 Record 6
CCA-OPE Operatore destinatario Operatore destinatario Operatore destinatario Operatore destinatario Operatore destinatario Operatore destinatario
CCA-DATA Data appuntamento Data appuntamento Data appuntamento Data appuntamento Data appuntamento Data appuntamento
CCA-ORA-INI 09:00 09:15 09:30 09:45 10:00 10:15
CCA-FL-DISP "N" "N" "N" "N" "N" "N"
CCA-FL-OCC "S" "S" "S" "S" "S" "S"
CCA-FL-FORZATO "N" "N" "N" "N" "N" "N"

In caso di inserimento, i 3 flag devono essere inseriti con i valori indicati. In caso di variazione si dovrà solo aggiornare CCA-FL-OCC. F.3 - Inserimento CRMAGAPP Creazione di un record riepilogativo:

Dato Record 1
AGP-ATT Attività
AGP-OPE Operatore destinatario
AGP-DATA-INI Data appuntamento
AGP-ORA-INI 09:00
AGP-NUM-SPAZI 6
AGP-ORA-REALE 09:10
AGP-FL-MULTI-OPE " " (non usato)

Operazione: "INVIA-CC"

Descrizione Questa operazione prende in carico una attività già esistente, e verifica se devono essere inviate "Copie conoscenza", attraverso l'esame della tabella CRMATTOP. Chiamata standard

Dato Contenuto
CRMS06-OPE INVIA-CC
CRMS08-ATTIVITA-CREATA Attività da elaborare

Elaborazione A - Preparazione testo Eseguire una chiamata a COGSA603, con i seguenti parametri:

Dato Contenuto
COGSA6-OPE ESTRAI-TESTO
COGSA6-CLASSE "03"
COGSA6-LNG w-lingua-custom, convertito in UPPER; se " " passare "ITA"
COGSA6-SUDD Al momento " "
COGSA6-KEY Numero attività in elaborazione
COGSA6-TAB-INFO Lasciare questa tabella vuota, sarà cercata internamente
COGSA6-TAB-PNT




All'uscita eseguire una chiamata a COGSA6 - Uso testi variabii, usando Operazione: ESTRAI-TESTO: stessa linkage della chiamata precedente: avrà la tabella con i tag valorizzata, e questa seconda chiamata esegue la sostituzione. All'uscita sarà restituito in COGSA6-TESTO il testo da stampare inviare via e-mail. B - Ricerca indirizzi Scorrere CRMATTOP per l'attività passata in input; verificare se esistono utenti in cui è stata richiesta una "copia conoscenza" ma non è ancora stata inviata; quindi i record con:

Dato Contenuto
CRP-FL-CC "S"
CRP-CC-INVIATA <> "S"

Per ciascun record trovato, eseguire la ricerca su PRNTOPE2 dell'indirizzo di posta a cui inviare il messaggio, e prepararsi una tabella di comodo interna. C - Invio e-mail Con una chiamata a POSTA si effettua l'invio in background del messaggio agli utenti selezionati:

Dato Contenuto
POSTA-OPE "Mymail-completo"
POSTA-EMAIL Il primo indirizzo di posta trovato
POSTA-OGGETTO "Notifica di attività"
MYMAIL-TEXT COGSA6-TESTO
MYMAIL-INVIO-AUTO "S"
MYMAIL-ESAMINA-ESITO "O"
MYMAIL-TO-PNT Il numero dei restanti indirizzi, e l'elenco degli stessi
Se il numero degli indirizzi restanti supera il massimo consentito (10), ripetere l'elaborazione con una chiamata successiva fino a inviare tutti gli indirizzi trovati in precedenza
MYMAIL-TO (n)

D - Esame esito All'uscita da POSTA, se l'esito restituito è positivo (MYMAIL-ESITO <> "F"), aggiornare lo stato su CRMATTOP per i nominativi inclusi:

Dato Contenuto
CRP-CC-INVIATO "S"

Operazione: AGGIORNA

Descrizione Aggiornamento o chiusura di una attività esistente. Per il momento l'elaborazione è limitata alla chiusura di una attività con eventuale modifica dei campi descrittivi (oggetto e testo). I dati non previsti nella chiamata rimarranno invariati rispetto alla chiamata già esistente. Chiamata standard

INPUT CRMS06-OPE AGGIORNA
CRMS08-ATTIVITA-CREATA Id attività da aggiornare
CRMS08-OGGETTO Oggetto dell'atttività
CRMS08-TESTO Testo da inserire nell'attivita'
CRMS08-OPE-DST Necessario in caso di chiusura
Ignorato in caso di aggiornamento
CRMS08-FL-ESEGUI L'attivita' deve essere eseguita? S/N (Default=N)
CRMS08-CODICE-GIRO Codice giro associato all'attività

Elaborazione Vediamo nel dettaglio i vari aggiornamenti effettuati, in funzione dei dati passati in input: Se CRMS08-FL-ESEGUI = "S" verrà eseguita la chiusura dell'attività, e gli aggiornamenti possono subire alcune modifiche (vedi sotto) B - Aggiornamento attività Aggiornamento comune in tutti i casi B.1 - Aggiornamento CRMATTIV Leggere e aggiornare i seguenti campi del record:

Nome campo Note
CRT-NUM CRMS08-ATTIVITA-CREATA
CRT-DATA-ESE Aggiornare solo in caso di chiusura attività altrimenti rimangono invariati
CRMS08-ASS-DATA
CRMS08-ASS-ORA
CRT-ORA-ESE
CRT-DES CRMS08-OGGETTO
CRT-FL-MULTI-DEST Non viene aggiornato, ma è importante per il proseguimento:
Come mi comporto in caso di attivita` con piu` destinatari?
"T": Viene eseguita quando tutti i destinatari la hanno eseguita
"P": Viene eseguita quando il primo destinatario la ha eseguita
CRT-CODICE-GIRO CRMS08-CODICE-GIRO
CRT-STATO-ATTIVITA CRMS08-STATO-ATTIVITA
CRT-CATEGORIA CRMS08-CATEGORIA

B.2 - Aggiornamento CRMATTNT Inserire o aggiornare questo record

Nome campo Note
CRO-NUM CRMS08-ATTIVITA-CREATA
CRO-NOTE CRMS08-TESTO

B.3 - Aggiornamento CRMATTOP Una attività potrebbe essere assegnata a uno o più operatori. Solo in caso di chiusura chiamata, è necessario leggere e chiudere il record relativo all'operatore:

Nome campo Note
CRP-NUM CRMS08-ATTIVITA-CREATA
CRP-OPE CRMS08-OPE-DST
CRP-FL-ESE "S"

Quindi, a seconda del tipo di chiusura richiesto (CRT-FL-MULTI-DEST): B.3.1 - CRT-FL-MULTI-DEST = "P" La chiusura del primo operatore chiude la chiamata per tutti: scorrere tutti i record restanti di CRMATTOP collegati alla chiamata ed impostare il flag di esecuzione CRP-FL-ESE = "S". B.3.2 - CRT-FL-MULTI-DEST <> "P" Ogni operatore deve chiudere la propria attività: scorrere tutti i record restanti di CRMATTOP collegati alla chiamata; se tutti hanno già CRP-FL-ESE = "S", allora l'attività si potrà chiudere definitivamente. B.3.3 - Chiusura attività Se è stata richiesta la chiusura, e per tutti gli operatori l'attività è chiusa, aggiornare ancora CRMATTIV impostando

Nome campo Note
CRT-FL-ESE "S"

Operazione: CHIUDI

Descrizione Esegue solamente la chiusura di una attività esistente, senza modificare altre informazioni su di essa. Chiamata standard

INPUT CRMS06-OPE "CHIUDI"
CRMS08-ATTIVITA-CREATA Id attività da aggiornare
CRT-DATA-ESE Data/ora chiusura
Se vuoti si userà data/ora sistema
CRT-ORA-ESE

Elaborazione Vediamo nel dettaglio i vari aggiornamenti effettuati, in funzione dei dati passati in input: B - Aggiornamento attività B.1 - Aggiornamento CRMATTOP Per ciascun operatore interessato all'attività eseguire la chiusura:

Nome campo Note
CRP-NUM CRMS08-ATTIVITA-CREATA
CRP-OPE CRMS08-OPE-DST
CRP-FL-ESE "S"

B.2 - Aggiornamento CRMATTIV Leggere e aggiornare i seguenti campi del record:

Nome campo Note
CRT-DATA-ESE CRMS08-ASS-DATA (Data sistema se vuoto)
CRT-ORA-ESE CRMS08-ASS-ORA (Ora sistema se vuoto)
CRT-FL-ESE "S"

Estratto da documentazione interna ClickUp