SharePoint - Usare Information Management Policy per l'invio di Notifiche di Scadenza
Definiamo un campo di tipo Date Time per immagazzinare il giorno per l’invio
dell’alert, ad es “AlertDate”
Definire da SharePoint Designer, un Workflow, in creazione/modifica, denominato “Set Alert Date” che
aggiorna il campo AlertDate con la scadenza desiderata.
Ad es, si vuole essere avvisati 7 giorni prima della scadenza
(EndDate)?
Impostiamo AlerDate = EndDate – 8 giorni (poi vediamo perché
8 e non 7)
Definire un secondo Workflow, senza nessuna spunta (no manuale, no
automatico) così non verrà visto da nessuno, se non l’admin
Chiamiamolo “Send Alert For
End Date”
Il Worflow invia una mail ai destinatari da avvisare.
Eventualmente, possiamo fare in modo, dopo l'invio, di impostare AlertDate
= AlertDate+1 (se AlertDate < EndDate), così da inviare mail anche nei
giorni successivi fino alla scadenza.
Ora, navigare
sulla lista/library interessata dall’alert ed entrare in List Settings > Information
Management Policy.
Definiamo una Policy per l’Expiration, utilizzando le
impostazioni seguenti:
NOTE:
Come Item Properties non è possibile (almeno su MOSS2007)
utilizzare un campo calcolato.
Il +1 è necessario (non accetta 0): da qui il fatto che nel workflow aumentiamo di 8 giorni.
Salviamo.
Che cosa succede?
SharePoint ha un job predefinito che gira ogni sera (ma
schedulabile a piacere) e che esegue il controllo su tutte le liste su cui è
definita una Policy di Expiration.
Se incontra un item che risponde a questa Policy, controlla
il campo definito per il controllo ("AlertDate"), se Today = AlertDate+1, avvia il Workflow indicato che invia la notifica (ed eventualmente, aggiorna
AlertDate = ALertDate+1, così da scattare nuovamente il giorno successivo).
Se la notifica invita l'utente a cambiare la EndDate dell'item, il Workflow "Set Alert
Date", va ad aggiornare l’Alert Date con la nuova data (EndDate-8gg) e ricomincia il giro.
NOTA IMPORTANTE:
Se si modifica il Workflow “Send Alert For End Date”, occorre
riconfigurare la Policy, andando a selezionare la nuova versione del Workflow.
Se si elimina il Workflow, occorre controllare che la Policy non
vada a prendere il primo Workflow che ha in elenco, visto che abbiamo tolto quello
corrente...
Non ci resta che attendere il giro del job di Expiration Policy o forzarne l'esecuzione da Central Administration.
Comments
Post a Comment