come realizzare un semplice workflow approvativo con

Transcript

come realizzare un semplice workflow approvativo con
Mauro Romano
COME REALIZZARE UN SEMPLICE
WORKFLOW APPROVATIVO
CON MICROSOFT SHAREPOINT
Sommario
1. Introduzione
Microsoft SharePoint è una piattaforma di
collaborazione, gestione documentale, business
intelligence e repository. E’ uno strumento duttile,
su cui sviluppare applicazioni e processi oltre che
per gestire la documentazione. In questo articolo
l’autore descrive le funzionalità di SharePoint con
l’intento di far comprendere al lettore le reali
potenzialità che questa piattaforma offre a chi lo
utilizza.
Per dare una prova di quanto descritto, in queste
pagine verrà spiegato il processo di creazione di un
workflow approvativo, personalizzato, utilizzando
unicamente le caratteristiche base di SharePoint.
Altran Italia ha deciso di basare l’intranet e gli
applicativi di controllo di gestione sulla tecnologia
SharePoint, progettati e realizzati utilizzando
competenze interne.
Microsoft SharePoint [1, 2, 3] è una piattaforma versatile che le aziende
e le divisioni, di qualsiasi dimensione, possono utilizzare per aumentare l’efficienza dei processi di business e per migliorare la produttività dei propri
gruppi di lavoro. SharePoint è presente sul mercato in due versioni:
• Windows SharePoint Services 3.0 (WSS 3.0): è completamente gratuito per chi ha una licenza di Windows Server 2003 o superiore;
• Microsoft Office SharePoint Server (MOSS): è la versione a pagamento
che, appoggiandosi a WSS 3.0, ne estende funzionalità e potenzialità.
WSS 3.0, distribuito come componente di Windows Server 2003, semplifica la realizzazione di un’infrastruttura di collaborazione, riducendone al
minimo i tempi amministrativi di gestione e manutenzione. La perfetta integrazione di WSS 3.0 con strumenti specializzati nella creazione, pubblicazione, organizzazione e ricerca delle informazioni, anche con i classici
strumenti Office, velocizza e centralizza semplicemente il lavoro degli utenti.
E’ possibile creare siti e aree di lavoro, assegnare i permessi di accesso e
caricare la documentazione, con notevole rapidità; con la medesima semplicità è possibile archiviare la propria documentazione in raccolte documenti (document library, analoghe a quelle del file system), ed inserire
metadati per estendere le proprietà dei documenti e semplificarne la classificazione, l’organizzazione e la ricerca. Un gruppo di lavoro che decida di
appoggiarsi a WSS 3.0 è operativo fin da subito: la gestione dei dati in
corso d’opera è flessibile e sotto il completo controllo degli amministratori
del sito che possono decidere di rendere pubbliche o private determinate
aree fino alla protezione, o alla condivisione, del singolo dato in una raccolta
documenti o in un oggetto di tipo lista1. Di grande importanza per le attività quotidiane sono le funzionalità di check-in/check-out2, versioning e
workflow messe a disposizione da Windows Workflow Foundation3.
Con WSS 3.0 si è raggiunto un significativo grado di maturità del prodotto;
in questa versione sono supportate funzioni comunemente utilizzate in soluzioni Web 2.0 come blog, wiki e feed RSS. Tutto questo, avendo a disposizione un computer con Windows Server 2003 o versioni successive.
1
L’oggetto di tipo lista è paragonabile ad una tabella, o a un foglio Excel; per semplificare, la raccolta documenti contiene file mentre la lista contiene dati. In SharePoint sono
presenti diversi tipi di lista che offrono funzionalità tipizzate (lista collegamenti, lista attività, lista attività di progetto, lista sondaggio, ecc).
2
Quando si lavora on-line, con strumenti Office, è SharePoint ad occuparsi di bloccare i
file che stiamo elaborando. La funzionalità di check-in/check-out permette agli utenti di bloccare manualmente un file non Office o di lavorare off-line, per poi sbloccarlo una volta sincronizzato il proprio lavoro.
3
Windows Workflow Foundation è un framework di Microsoft che consente agli utenti di
creare flussi di lavoro nelle proprie applicazioni.
Altran Italia Technology Review n° 4 - Settembre 2010 <
23
Fonte: Rielaborazione da: http://msdn.microsoft.com/en-us/library/cc537498.aspx
Figura 1. Distribuzione semplificata dei servizi di SharePoint.
Figura 2. SharePoint in alcuni ambiti di utilizzo.
24
> Altran Italia Technology Review n° 4 - Settembre 2010
Per quanto riguarda MOSS, è un prodotto che si acquista a parte con
le sue licenze server e client (Client Access License, CAL). Si basa,
come abbiamo detto, su WSS 3.0 e ne estende le funzionalità, ad
esempio, per integrare i vari siti WSS 3.0 in un’unica struttura gerarchica. Il motore di ricerca, potenziato, lavora su tutti i siti collegati
a MOSS e non solo, come accade in WSS 3.0, in quello dove si effettua la ricerca.
MOSS è pensato essenzialmente per creare portali aziendali intranet,
internet ed extranet. Sono incluse funzionalità avanzate di Content Management, Document Management e, nella versione Enterprise, offre
funzionalità di Business Intelligence con strumenti come Excel Services, Business Data Catalog, Report Center, Key Performance Indicator, PerformancePoint ed InfoPath Forms Services.
Nei paragrafi seguenti, dopo un breve excursus storico, sono illustrate
le caratteristiche principali di WSS e MOSS di cui viene fornita un’overview in Figura 1 e in Figura 2.
2. Storia di SharePoint
La prima versione di SharePoint è stata commercializzata negli anni
Novanta con il nome di SharePoint Team Services (STS) e SharePoint
Portal Server (SPS) e risale allo stesso periodo di Office XP che, nella
sua versione completa, conteneva Microsoft FrontPage per supportare
gli utenti nella personalizzazione dei propri siti di lavoro. STS poteva girare su Windows 2000 Server o Windows XP.
Dopo aver potenziato alcuni servizi di condivisione documentale e collaborazione, a metà del 2003 sono stati rilasciati Windows SharePoint Services 2.0 e SharePoint Portal Server 2003. Entrambe le
piattaforme sono state distribuite come un aggiornamento di SharePoint Team Services ma erano, in realtà, due applicazioni completamente ridisegnate. SharePoint Team Services conservava i documenti
sul classico file system, inserendo i metadati dei documenti in un database. WSS 2.0 e SPS 2003, invece, memorizzavano documenti e
metadati in un database, introducendo la gestione delle versioni e del
check-in/check-out. Con il Service Pack 2 per WSS e SPS, è stato aggiunto il supporto per SQL Server 2005 e l’uso del Framework .NET
2.0.
Windows SharePoint Services 3.0, con la sua versione portale denominata Microsoft Office SharePoint Server, è stato rilasciato il
16 novembre 2006, in concomitanza alla suite Microsoft Office
2007 e a Windows Server 2008. WSS 3.0 è stato realizzato utilizzando i Framework .NET 2.0 e 3.0, per poter aggiungere le funzionalità di workflow con Windows Workflow Foundation. All’inizio
del 2007, WSS 3.0 è stato reso disponibile al pubblico con il supporto del solo Windows Server 2003 (e versioni successive).
Con WSS 3.0 si è raggiunto un significativo grado di maturazione del
prodotto: in questa versione sono supportate funzioni utilizzate comunemente in soluzioni Web 2.0 come blog, wiki e feed RSS.
All’inizio del 2010 Microsoft ha rilasciato la quarta release di questa
piattaforma chiamandola SharePoint Foundation 2010 e la versione
portale, SharePoint Server 2010.
Le numerose potenzialità offerte dimostrano la stabilità raggiunta da
SharePoint, che può essere considerato un vero e proprio coltellino
svizzero, completo e scalabile, per le aziende (Figura 3).
Figura 3. SharePoint: il “coltellino”
svizzero per le aziende.
3. Le funzionalità di WSS 3.0
Windows SharePoint Services 3.0 offre molte funzionalità off-theshelf necessarie a supportare gli utenti nella creazione e nell’utilizzo
dei loro siti di progetto, divisione ed intranet. Inoltre, ogni funzionalità ha molteplici possibilità d’uso, di integrazione e di sviluppo. Nel seguito vengono brevemente descritte quelle fondamentali.
• Creazione siti: permette, a chiunque ne abbia i permessi, di creare
aree di lavoro con modelli (template) di sito predefiniti o personalizzati. Il template di default, che è il più utilizzato, è il Sito del
team (team site), ma ce ne sono molti altri specifici, ad esempio,
per la gestione dell’Help Desk, per l’organizzazione di riunioni, corsi,
o gruppi di lavoro, per la creazione di uno specifico documento,
ecc. All’interno dei siti SharePoint, è possibile creare aree di raccolta documenti, liste di elementi (come contatti, attività e problemi da monitorare), calendari condivisi, forum ed aree wiki.
• Gestione documenti: è una funzionalità importante di SharePoint.
Creando liberamente raccolte documenti, si possono caricare file,
di qualsiasi formato, da web o direttamente dalle applicazioni che
li generano, tramite un indirizzo web (ad esempio, http://sharepoint.altran.local/documenti/word.docx). Con questa funzionalità,
SharePoint permette di inserire metadati, gestibili sottoforma di
colonne nelle raccolte documenti, che verranno richiesti in fase di
salvataggio del file o, se predisposto, recuperati direttamente dal
documento Office che si sta caricando. I metadati vengono associati ai documenti e possono essere utilizzati in ricerche, analisi o
applicazioni personalizzate. I file caricati sui siti di SharePoint possono essere salvati in modo trasparente su SQL Server. Inoltre,
con una minima pianificazione delle attività, è possibile spostare in
SharePoint tutti i file presenti sul file system, organizzandoli in siti
Altran Italia Technology Review n° 4 - Settembre 2010 <
25
e raccolte documenti secondo le proprie necessità. E’ anche possibile lasciare agli utenti l’accesso alle consuete mappature di
rete, ma godendo, immediatamente, di tutti i benefici forniti da
SharePoint: la possibilità di gestire le versioni dei documenti e le
logiche di check-in/check-out sono solo alcuni dei vantaggi offerti.
• Cestino a due livelli: è un’utile funzionalità introdotta a partire dalla
versione 3.0. Ogni file o elemento di una lista, eliminato da un
utente, viene automaticamente spostato all’interno del cestino;
quest’ultimo lavora a livello utente, così da rispettare eventuali
permessi d’accesso ai file di altri utenti. È possibile svuotare il cestino o rimuovere solo alcuni file. Questi, però, non vengono cancellati definitivamente, ma finiscono in un secondo cestino a
disposizione dell’amministratore. Se un documento viene cancellato per sbaglio dal cestino, è sempre possibile rivolgersi all’amministratore, purché non passi un tempo troppo lungo. Infatti,
l’amministratore centrale può impostare la rimozione dei file più
vecchi di trenta giorni (impostazione predefinita) dai cestini; trascorso tale periodo è necessario ricorrere ai backup.
• Workflow articolati grazie a Windows Workflow Foundation, perfettamente integrato in SharePoint. Configurando i workflow predefiniti, o creandone di nuovi, è possibile attivare le funzionalità di
approvazione, invio e-mail, ecc., sia su documenti sia su altri elementi del sito.
• Wiki (Figura 4): consente di collaborare alla creazione di un’area
informativa comune, scambiando idee velocemente e in modo
aperto. Tramite un browser, i membri del team possono creare e
collegare tra loro pagine, senza utilizzare editor di testo o senza
possedere speciali competenze tecniche.
• Blog: mette a disposizione degli utenti dell’azienda un’area nella
quale possono condividere idee ed informazioni su prodotti, tecnologie e processi, scrivendo brevi e frequenti post ai quali i lettori, se abilitati, possono accodare i loro commenti.
• Sondaggio: è una particolare lista di SharePoint che permette di
raccogliere informazioni con visualizzazioni condizionali in base alle
risposte fornite alle domande di un sondaggio. Consente agli utenti
di salvare risposte incomplete, nel caso in cui debbano interrompere la compilazione del sondaggio.
• Feed RSS: consente agli utenti di essere costantemente aggiornati sulle novità dei siti di loro interesse, anziché navigarli alla ricerca dei nuovi inserimenti.
• Invia avviso: è una funzionalità, disponibile in ogni raccolta documenti o in ogni lista, che permette di ricevere notifiche tramite
posta elettronica ogniqualvolta vengano modificati, aggiunti o cancellati elementi. Lo strumento è altamente configurabile e l’utente
può decidere quando ricevere gli avvisi, per quale evento e, se ha
sufficienti permessi, può impostare questi avvisi per altri utenti.
26
> Altran Italia Technology Review n° 4 - Settembre 2010
Figura 4. Esempio di sito Wiki in SharePoint.
4. Le funzionalità di MOSS
Le caratteristiche più interessanti che contraddistinguono Microsoft
Office SharePoint Services sono le seguenti:
• Excel Services: permette di caricare un file Excel e di visualizzarlo
nel browser, senza che l’utente abbia bisogno della versione client
di Excel. Il proprietario (owner) del file può decidere di rendere
pubblico agli utenti l’intero spazio di lavoro (workspace) o solo alcune determinate aree od oggetti. La sicurezza dei dati è un
aspetto importante: informazioni quali formule ed origini dei dati
sono nascoste a tutela delle regole di business contenute nel documento Excel. Inoltre, se previsto dall’owner del file, gli altri utenti
possono manipolare i dati pubblicati tramite dei parametri.
Con Excel Services si centralizzano le informazioni, nel pieno della
logica di SharePoint, e si possono facilmente assegnare gli accessi
in lettura o scrittura permettendo, in questo modo, l’accesso selettivo al file Excel archiviato. È anche possibile creare snapshot di
un file Excel, anziché pubblicarlo in modalità interattiva con collegamento in tempo reale alla fonte dati. Excel Services consente,
infine, di sfruttare origini dati esterne come, ad esempio: database SQL Server, altri fogli Excel, file di testo, ecc. (Figura 5).
• Business Data Catalog (BDC): è, insieme ad Excel Services, una
delle componenti più interessanti di Microsoft Office SharePoint
Server. Consente sia di utilizzare origini dati esterne in cartelle di
lavoro di Excel, sia di utilizzare e aggregare fonti dati esterne (ad
esempio, SAP, Siebel, Oracle), accessibili come database o web
service. In questo modo, è possibile connettere tra loro applicazioni
esistenti in azienda mediante SharePoint, in maniera semplice e
veloce. Gli amministratori di SharePoint creano le connessioni di
lendario per gli aggiornamenti successivi e sottoscrivere i report
di interesse. Per impostazione predefinita, un file Excel, pubblicato
e salvato in una raccolta documenti nel Report Center, è predisposto ad essere visualizzato direttamente nel browser: in questo
modo, è possibile visualizzare comodamente il file senza doverlo
aggiungere ad una Web Part o aprirlo in Excel.
Figura 5. Cruscotti con Excel Services.
sistema, definendo specifiche entità di business attraverso dei file
XML: tali file indicano a SharePoint dove e come accedere alle entità individuate (mediante web service, query verso database, ecc.)
e le memorizzano nel Centro report (Report Center), un repository
centralizzato di file. In questo modo, tutti gli utenti che dispongono
delle necessarie autorizzazioni, possono accedere e riutilizzare facilmente il pool di connessioni centralizzato per ricerche, liste e
Web Part4. Si possono, ad esempio:
• effettuare ricerche che combinano i dati delle liste e delle raccolte documenti di un portale con quelli delle entità applicative
esterne configurate (ad esempio, anagrafiche clienti, ordini, fatture, ecc.);
• utilizzare le specifiche Web Part del BDC, che permettono di
portare rapidamente i dati delle entità applicative all’interno delle
pagine web, senza scrivere codice.
L’utilizzo di connessioni a origini dati esterne permette agli utenti
d’interagire con i dati contenuti nell’origine esterna senza uscire da
SharePoint.
• Report Center: fornisce un luogo centralizzato per la pubblicazione
di dati e oggetti su cui effettuare operazioni di Business Intelligence; contiene raccolte di documenti per la memorizzazione di report, elenchi, modelli di pagine Web Part e file .odc (Office Data
Connection). All’interno del Report Center, gli utenti possono cercare i dati utilizzando le categorie assegnate, visualizzare un ca-
4
Una Web Part è un controllo che può essere aggiunto da un utente a run time. Più Web
Part possono essere integrate tra di loro per creare siti web "dinamici" e personalizzabili
direttamente dall'utente. Ad esempio, iGoogle è una home page dinamica personalizzabile dall’utente a proprio piacimento mediante Web Part (news, calendario, gadget, ecc.).
• Key Performance Indicator (KPI): è un indicatore grafico che consente di monitorare i progressi compiuti in relazione ad un obiettivo. L’utilizzo dei KPI di SharePoint consente di visualizzare
rapidamente risposte alle domande più comuni legate allo stato di
salute dei propri obiettivi. I KPI vengono creati utilizzando elenchi
tipizzati e visualizzati tramite Web Part specifiche.
E’ possibile aggiungere Web Part ai cruscotti (dashboard) nel sito
del Report Center o visualizzarli in altri siti e liste. Ogni KPI riceve
un singolo valore da una fonte dati, da una singola proprietà o calcolando le medie attraverso dati selezionati, successivamente confronta quel valore con un altro precedentemente impostato.
Per utilizzare i KPI, occorre innanzitutto creare una lista KPI a cui
aggiungere uno o più indicatori, impostando una delle seguenti origini dati:
• liste di SharePoint,
• file Excel,
• Microsoft SQL Server 2005 Analysis Services5,
• informazioni inserite manualmente.
• InfoPath Forms Services: consente agli utenti di compilare moduli
Microsoft Office InfoPath 2007 utilizzando un browser Web, in alternativa ad InfoPath 2007 client. Grazie a questo servizio, è possibile utilizzare template più rapidamente e più semplicemente di
quanto fosse possibile con le precedenti versioni di InfoPath client.
InfoPath Forms Services fornisce, inoltre, un luogo centralizzato
per memorizzare, gestire e distribuire i template dei moduli di
un’azienda.
5. Creazione di un semplice
workflow
Dopo aver descritto le principali caratteristiche di SharePoint, in questo paragrafo viene mostrato passo passo come creare un workflow
approvativo (Figura 6). Non verrà utilizzato quello di base fornito da
SharePoint, ma ne verrà creato uno ex novo. In questo modo, si fornisce al lettore un’idea più completa delle possibilità di utilizzo e personalizzazione di SharePoint, anche se non è un esperto sviluppatore.
Inoltre, il workflow approvativo presente in SharePoint è abbastanza
5
Microsoft SQL Server 2005 Analysis Services (SSAS) offre funzionalità di elaborazione
analitica in linea (On-Line Analytical Processing, OLAP) e quindi di estrazione delle informazioni per soluzioni di Business Intelligence. Analysis Services consente di elaborare, creare e gestire strutture multidimensionali contenenti dati aggregati.
Altran Italia Technology Review n° 4 - Settembre 2010 <
27
Figura 6. Descrizione del workflow approvativo.
limitato, ad esempio non permette di scegliere a chi assegnare l’attività di approvazione in base a informazioni, come la categoria di appartenenza di un documento.
Nel seguito, si assume che il lettore abbia:
• familiarità con SharePoint per la creazione di raccolte documenti,
liste e colonne6;
• un sito su WSS, ad esempio creato con il modello Sito del
team;
• Microsoft SharePoint Designer 2007 installato sul computer. E’ lo
strumento designato da Microsoft per la personalizzazione dei siti
SharePoint ed è possibile scaricarlo liberamente dal sito di Microsoft.
5.1 Creazione dell’elenco dei
responsabili dell’approvazione
Cominciamo con la creazione di una lista generica chiamata Responsabili Approvazione, avente le seguenti colonne:
• Categoria di tipo Scelta, con i valori Tecnico e Commerciale,
selezione singola; deve contenere informazioni, senza valori predefiniti;
rePoint non permette di cancellarla, ma di nasconderla. Per farlo, bisogna andare in Impostazioni dell’elenco, poi in Impostazioni
avanzate e si deve impostare su Sì il campo Tipo di contenuto.
Infine, disattiviamo gli allegati poiché non saranno utilizzati. Dopo aver
salvato, torniamo nelle impostazioni della lista: nella sezione Tipi di
contenuto clicchiamo su Elemento, poi su Titolo e impostiamo il
valore Nascosta. In questo modo, non vediamo più la colonna Titolo
nella scheda di dettaglio dell’elemento della lista. Per non vederla
nemmeno nell’elenco, è necessario modificare la visualizzazione corrente, togliendo il flag in corrispondenza del campo in questione, aggiungendo la voce Modifica (collegamento per modifica
elemento) e spostando quest’ultima al primo posto. E’ preferibile
non modificare mai la vista predefinita Tutti gli elementi, ma crearne
una nuova, poiché la visualizzazione completa può essere utile per
attività di manutenzione, controllo e verifica.
Ora inseriamo due dati profili utente:
• Commerciale
• Tecnico
e impostiamo il relativo indirizzo e-mail. Per verificare la corretta configurazione dell’indirizzo e-mail, si può cliccare sui nomi nella colonna
Responsabile. Il risultato deve essere come quello rappresentato
in Figura 7.
• Responsabile di tipo Utente o Gruppo, con filtro solo su utenti;
deve contenere informazioni e selezione singola.
La colonna Titolo non è necessaria per gli scopi dell’esempio: Sha6
Per approfondire le procedure per la creazione di raccolte documenti e liste, si rimanda
alla documentazione ufficiale Microsoft, all’indirizzo: http://office.microsoft.com/itit/help/HA100983761040.aspx?pid=CL100605171040
28
> Altran Italia Technology Review n° 4 - Settembre 2010
Figura 7. Lista “Responsabili Approvazione”.
5.2 Creazione della raccolta
di documenti da approvare
Il passaggio successivo è individuare una raccolta documenti alla quale
applicare il workflow e nella quale caricare i documenti, tra cui quello
da approvare. Ad esempio, si può utilizzare la raccolta documenti Documenti Condivisi presente nei siti creati con il modello Sito del
team. In questo modo, bisogna solo attivare l’approvazione del contenuto, cliccando su Impostazioni, Impostazioni Raccolta documenti, Impostazioni controllo versioni; eventualmente, si può
gestire il versionamento del documento. Al termine di questi passi è
necessario salvare.
Nella Raccolta documenti, aggiungiamo una colonna Categoria, di
tipo Scelta con i valori Tecnico e Commerciale, impostando il
campo come obbligatorio e senza specificare valori di default. Infine,
apriamo SharePoint Designer e colleghiamoci al sito che conterrà il
workflow, cliccando su File, Apri Sito e inserendo l’indirizzo della root
del sito. SharePoint Designer mostrerà una struttura simile a quella
illustrata in Figura 8.
Figura 8. Il sito in SharePoint Designer.
5.3 Creazione del workflow
di approvazione
Per creare un workflow, posizioniamo il mouse in qualsiasi punto dello spazio di lavoro (in SharePoint Designer), clicchiamo con il tasto destro e selezioniamo Nuovo, Contenuto di SharePoint, Flusso di
lavoro, Flusso di lavoro vuoto, OK. Si aprirà la finestra Progettazione flussi di lavoro, dove bisogna impostare il nome del nuovo
workflow, WF – Approvazione, associarlo alla raccolta documenti
e selezionare il secondo checkbox (Figura 9).
Nella schermata successiva bisogna impostare le attività del workflow.
Per prima cosa diamo un nome alla prima attività7, chiamandola Approvazione documento. Successivamente, configuriamo le azioni:
selezioniamo la funzionalità Imposta variabile flusso di lavoro, dal
menu azioni, e creiamo una nuova variabile cliccando sul link variabile flusso di lavoro (Figura 10). Chiamiamola IDDoc ed impostiamola di tipo ID voce elenco; il valore va impostato con origine Elenco corrente e campo ID. Questa variabile servirà ad individuare rapidamente il documento all’interno della raccolta documenti.
L’attività di approvazione di un documento può prevedere due output,
il risultato dell’approvazione e un eventuale commento. In quanto
segue, impostiamo i campi che contengono questi output. Dal menu
Azioni, selezioniamo Raccolta dati da un utente e clicchiamo su
dati. Procediamo ed impostiamo il nome Approvazione documento, clicchiamo su Avanti e inseriamo i campi da mostrare:
• Stato approvazione documento di tipo Scelta con i valori Approvato e Rifiutato, visualizzati come Pulsanti di scelta, disabilitando le immissioni personalizzate o vuote;
7
In SharePoint, un’attività è costituita da un insieme di azioni.
Figura 9. Creazione di un workflow con
SharePoint Designer.
Figura 10. Creazione di una variabile workflow.
• Commenti sul documento di tipo Righe di testo multiple; consentiamo che non ci siano valori e che il testo sia in formato HTML
su 5 righe.
Impostiamo il valore evidenziato questo utente (Figura 11), utilizzando la lista Responsabili Approvazione creata in precedenza.
All’apertura della nuova finestra, selezioniamo Ricerca flusso di la-
Altran Italia Technology Review n° 4 - Settembre 2010 <
29
Figura 11. Configurazione dell’azione
“Raccogli dati utente”.
Figura 13. Risultato della prima
attività del workflow.
Figura 12. Selezione del responsabile
dell'approvazione.
voro… e, successivamente, clicchiamo su Aggiungi: si apre una
nuova finestra dove impostiamo la lista Responsabili Approvazione, come origine dati, e Responsabile, come campo da utilizzare
per l’assegnazione dell’attività (Figura 12). Nella sezione inferiore di
questa schermata occorre inserire un filtro per cercare il documento
da approvare. Quando un utente caricherà un documento nella raccolta documenti, sarà obbligato ad inserire la categoria del documento perché abbiamo reso obbligatorio il metadato ad esso
associato. Quindi, non resta che confrontare la categoria del documento con la categoria associata ai responsabili dell’approvazione (Figura 7), recuperando i dati della persona incaricata per la validazione.
Impostiamo la voce Campo con la categoria della lista Responsabili Approvazione e il relativo valore con un’opportuna funzione, in
modo da evitare di inserire uno dei due valori fissi proposti dall’applicazione. Si apre una nuova maschera dove impostiamo la categoria
dell’elemento corrente (il documento caricato e che ha avviato il nostro workflow).
All’avvio del workflow, verrà creata un’attività e verrà assegnata all’utente individuato. E’ necessario memorizzare l’ID di questa attività
per poter aggiornare lo stato del documento al variare dello stato
dell’attività; dunque, l’output dell’attività Approvazione documento
dovrà essere raccolto in una nuova variabile chiamata IDTask di tipo
ID voce elenco.
Successivamente, creiamo altre due variabili, DocStatoApprovazione e DocStatoApprovazioneCommento, per memorizzare lo
stato dell’approvazione del documento e il relativo commento: asse-
30
> Altran Italia Technology Review n° 4 - Settembre 2010
gniamo loro i valori degli opportuni campi compilati dall’utente, ripetendo le operazioni di prima. Il risultato è rappresentato in Figura
13.
A questo punto il sistema è istruito per prendere in carico un documento ed assegnare l’attività alla persona indicata come responsabile dell’approvazione. Rimane da impostare il comportamento del sistema
quando l’utente completa l’attività: esso, ovviamente, dipende dal
fatto che l’utente approvi o rifiuti il documento. Nella colonna a destra
della schermata in Figura 13 clicchiamo su Aggiungi passaggio al
flusso di lavoro e chiamiamolo Controllo Stato Approvazione. Si
apre la schermata in Figura 14. Abbiamo due stati possibili e, dunque, due condizioni, a cui sono associate due azioni. Riguardo alla
prima condizione, dal menu Condizioni inseriamo la funzionalità
Confronta qualsiasi origine dati e valorizziamo il primo valore con
la variabile DocStatoApprovazione (vi si accede cliccando sul link
proposto dall’applicazione, poi sul simbolo funzione e, infine, sotto
Figura 14. Risultato della seconda
attività del workflow.
l’origine dati Dati flusso di lavoro). Impostiamo la condizione è
uguale a e come secondo valore inseriamo la stringa Approvato.
Passiamo alle azioni. Dal menu Azioni selezioniamo la voce Imposta
stato approvazione contenuto e valorizziamo lo stato con Approvato; per dare la possibilità all’utente di motivare la sua scelta,
inseriamo il valore DocStatoApprovazioneCommento.
Per quanto riguarda la seconda condizione, Rifiutato, ripetiamo questi ultimi due passaggi aggiungendo una nuova sezione cliccando su
Aggiungi diramazione condizionale ‘Else If’.
5.4 Test del workflow
A questo punto, il workflow approvativo è realizzato, senza scrivere
una sola riga di codice. Per verificarne la correttezza, posizioniamoci
nella raccolta documenti e carichiamo un qualsiasi documento, non necessariamente un documento Office. Al caricamento, viene richiesto
di selezionare la categoria del documento, e all’archiviazione, si attiverà il workflow, mostrando, nella colonna Stato, la dicitura In corso
e, nella colonna Stato approvazione, la dicitura In sospeso (Figura 15). Pochi istanti dopo è creata un’attività che viene assegnata
all’utente indicato nella lista Responsabili Approvazione. In questo esempio, è stato inserito un documento appartenente alla categoria Commerciale e l’attività è assegnata a Mauro Romano (Figura
7). Nella casella di posta di Mauro Romano è arrivata un’e-mail che
lo avvisa che gli è stata assegnata l’attività di approvazione del documento indicato, con l’invito ad accedere alla lista attività per procedere alla validazione. La schermata di approvazione del documento
contiene i campi inseriti in fase di creazione del workflow ed è mostrata in Figura 16. L’utente può approvare o rifiutare il documento,
completando così l’attività: il workflow imposta lo stato di approvazione del documento e il relativo commento, con i dati inseriti nella
schermata di approvazione. Il risultato finale è mostrato in Figura 17.
Figura 15. Avvio del workflow in SharePoint
al caricamento del documento.
Figura 16. Maschera dell’attività di
approvazione del workflow.
6. Conclusioni
In questo articolo è stato illustrato a grandi linee SharePoint, discutendo come utilizzarlo per migliorare il nostro lavoro. Si è mostrato,
tramite un esempio, che è una piattaforma flessibile, altamente personalizzabile, che offre semplici ma fondamentali servizi di base. Il
semplice workflow approvativo descritto passo passo può essere arricchito e personalizzato a seconda delle proprie esigenze. Si potrebbero gestire: l’interruzione del processo di approvazione, se in
corso; la riassegnazione dell’attività conseguente alla modifica della
categoria del documento; l’assegnazione condizionale del documento
sulla base di valori presenti al suo interno e opportunamente formattati ed esposti come metadati. Quest’ultimo caso si può presentare, ad esempio, nel caso di una Richiesta d’Acquisto che deve
essere approvata da ruoli aziendali diversi a seconda del suo importo.
La versione base di SharePoint contiene molte funzionalità utili e importanti: un utilizzo consapevole e continuativo dello strumento può
portare risultati eccellenti. Per i lettori che vogliono sperimentare la
piattaforma SharePoint, l’autore consiglia di utilizzarne i servizi offerti, capire e provare tutte le funzionalità e, solo in un secondo momento, se necessario, personalizzare lo strumento in base alle
Figura 17. Il documento è stato approvato con
il commento inserito nel modulo dell’attività
(il codice HTML non è gestito
in questa visualizzazione).
esigenze. Infatti, spesso, SharePoint è utilizzato fuori contesto, snaturalizzandolo e perdendo, in questo modo, tutti i benefici tipici di uno
strumento di collaborazione.
Altran Italia Technology Review n° 4 - Settembre 2010 <
31
Glossario
WSS
MOSS
STS
SPS
BDC
ODC
KPI
RSS
Windows SharePoint Services
Microsoft Office SharePoint Server
SharePoint Team Services
SharePoint Portal Server
Business Data Catalog
Office Data Connection
Key Performance Indicator
Really Simple Syndication
Bibliografia
[01].
Wynne Leon, Wayne Tynes, Simeon Cathey,
“Microsoft SharePoint Server 2007 Bible”,
Wiley, 2007.
[02].
Microsoft, http://www.microsoft.it
[03].
Microsoft Office Sharepoint Server
http://sharepoint.microsoft.com/
Pages/Default.aspx
32
> Altran Italia Technology Review n° 4 - Settembre 2010
Mauro Romano è in Altran
Italia dal 1998. Da sempre
interessato alle tecnologie
Web, si è specializzato nel
tempo in tecnologie Microsoft. Nel corso degli anni ha
ricoperto sovente il ruolo di
System Integrator consolidando le sue competenze
su prodotti e processi. Al
momento è Senior Consultant all’interno della Divisione AIT ed opera, con il ruolo di
Project Manager, prevalentemente negli ambiti Content
Management, Document Management, Knowledge Management e Business Intelligence implementando molti processi sulla piattaforma Microsoft SharePoint, che segue
assiduamente da oltre 10 anni. Appassionato di biologia
marina e fotografia subacquea, nel 2000 ha realizzato un
portale web (http://www.mondomarino.net) premiato, nel
2004, come miglior Sito educativo al 31° Festival Mondial
de l'Image Sous-Marine di Antibes Juan-Les-Pins, Francia.
[email protected]