Categorie

Log In

Sharepoint: Event Handler e Document Library

Le liste Document Library (che contengono file allegati) hanno un comportamento diverso dalle liste standard di Sharepoint  se dobbiamo utilizzarle con gli Event Handler, dobbiamo fare attenzione alle informazioni che dobbiamo recuperare e sopratutto quando vogliamo leggerle.

Se dobbiamo catturare l’inserimento di un nuovo record ci viene incontro l’evento ItemAdded (o ItemAdding se dobbiamo catturare l’evento prima che il record venga scritto nel database di Sharepoint), mentre se abbiamo bisogno di eseguire un operazione all’aggiornamento, abbiamo a disposizione l’evento ItemUpdated (o ItemUpdating ).

Nelle liste Document Library, possiamo associare proprietà personalizzate che saranno valorizzate dall’utente in fase di upload (o inserimento direttamente dal pacchetto Office), queste informazioni non sono disponibili negli eventi ItemAdded o ItemAdding, dato che Sharepoint si comporta nel seguente modo:

  1. Effettua l’upload del file selezionato e inserisce un record nella nostra Document library (qui viene lanciato l’evento ItemAdd o ItemAddig).
  2. Sharepoint richiede le proprietà da valorizzare all’utente ed esegue la modifica del record al punto 1, in questo caso viene eseguito l’evento ItemUpdated o ItemUpdating

Gli step di cui sopra sono eseguiti sia in caso di upload di un file, ma anche nel caso in cui si utilizzi un applicativo Office, infatti in questo caso l’ambiente Office ha una forte integrazione con Sharepoint che apre e modifica il file allegato direttamente in Office.
Durante l’esecuzione del punto 1 avremo non valorizzate tutte le proprietà personalizzate presenti e se, nella logica del nostro Event Handler, dobbiamo tenere in considerazione i valori inseriti in queste proprietà, dobbiamo agire nell’evento ItemUpdated o ItemUpdating.

Share

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>