MOSS Sample : un bon exemple d'Event Handler (gestion des permissions)
(Si vous êtes novice sur les event handler, regarder à la fin du post )
En parcourant les forums SharePoint, je suis tombé sur un lien plus qu'intéressant :
Sample Event Handler to set Permissions par Ishai Sagi [MVP]
C'est un sample complet de gestion d'évenement pour une liste SharePoint ciblé sur la notion de gestion de permission.
>>> Je me permet d'en parler car sans pour autant renier la complexite de la gestion des permissions dans MOSS, bien des gens aimerait pouvoir publier des éléments dans SharePoint 2007 tout en s'assurant de n'être que le seul auteur/lecteur habilité
Genre : stockage de note de frais par exemple
Le sample vient répondre à cette problématique et détaille dans son code des sous éléments trés intéressants comme :
- How to get a list item in the event handler
- How to impersonate another user totaly (not using RunWithElevatedPrivilages)
- How to change an item's permissions
- How to create a new permission role in a web site
- How to check if a role exists or not
A noter 2 outils bien pratiques pour la gestion des Event Handlers :

Le manager Winform de u2u
- La feature de Gat : SharePoint Events Manager sur CodePlex
Dernier point : Mais que signifie ce Charabia ?
>>> Pas de soucis, j'explique
Dans le framework SharePoint, les containeurs de données "Liste" ont la possibilité d'être customisé via l'ajout de code métier pouvant intéragir directement avec le moteur évenementiel de ceux ci.
En résumé, pouvoir intégrer du code sur l'ajout/suppression d'un document par exemple !
Ce webcast détaille d'ailleurs bien le concept et leur réalisation : Creating and Using Event Handlers in Windows SharePoint Services 3.0
Pour les développeurs acharnés, voici une série de 3 posts qui sauront vous guider au mieux :
En ce qui concerne le déploiement, n'oubliez pas de faire une Feature intégré dans une solution comme d'habitude
>>> exemple : http://msdn2.microsoft.com/en-us/library/ms460929.aspx
Pour rappel, il existe moultes évenements disponible pour le développement de Event Handler comme :
Action | Event Order |
Add an item | ItemAdding ItemAdded |
Update an item | ItemUpdating ItemUpdated |
Add an item with an single attachment (if you add more then one attachment AttachmentAdding and AttachmentAdded will fire as many times as there are attachments) | ItemAdding ItemAttachmentAdding ItemAttachmentAdded ItemAdded |
Update an item with adding an Attachment | ItemUpdating ItemAttachmentAdding ItemAttachmentAdded ItemUpdated |
Update an item with deleting an Attachment | ItemUpdating ItemAttachmentDeleting ItemAttachmentDeleted ItemUpdated |
Checking a file in | ItemCheckingIn ItemCheckedIn |
Updating and Checking in a file from Word 2003 or 2007 | ItemUpdating ItemUpdated ItemUpdating ItemCheckingIn ItemUpdated ItemCheckedIn |
Moving a file in a document library from one folder to another folder, using Network Share. | ItemAdding ItemUpdating ItemAdded ItemUpdating ItemUpdated ItemUpdating ItemUpdated ItemDeleting ItemDeleted |
Creating a Folder in a List or Document Library | ItemAdding ItemAdded |
Bon coding
Renaud Comte aka TheMit (SPHuggy les bon tuyaux)
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :