OVH Cloud OVH Cloud

[WSS2003] événement

5 réponses
Avatar
pierre
Je voudrais qu'un événement déclenche du code lorsqu'un document est approuvé.
Est-ce possible?
si oui comment faire?

5 réponses

Avatar
Julien Bakmezdjian [MS]
Bonjour,

Il faut utiliser les 'event sink'. Il s'agit d'une assemblée .NET (C# ou
VB.NET) qui contient une classe implémentant IListEventSink.
Vous pouvez alors ajouter le code que vous souhaitez en fonction du type de
l'événement (check-in, check-out, ajout, suppression...).
Il faudra ensuite enregistrer la DLL dans les propriétés de la document
library (après avoir activer la propriété Event Handler dans les General
Setting du site central d'administration).
Toutes les précisions sont dans le SDK Sharepoint 2003, rubrique Platform ->
Microsoft WSS -> Programming tasks -> Programming with the object model ->
Handling Document library events.

Cordialement,

Julien


"pierre" a écrit dans le message de
news:
Je voudrais qu'un événement déclenche du code lorsqu'un document est


approuvé.
Est-ce possible?
si oui comment faire?


Avatar
pierre
d'abord merci pour votre réponse
ensuite,
j'ai déjà eu l'occasion de regarder l'interface IlisteventSink
sa méthode On event ne prend pas en compte l'événement d'approbation.
Cependant, après approbation un check-in est effectué automatiquement (du moins il me semble), je pourrais donc utiliser l'événement check-in en vérifiant le statut du document.
En revanche s'il est rejeté, je ne sais pas comment récupérer un événement rejet.
à moins qu'un check-in soit effectué aussi dans ce cadre?
j'éspère être assez clair sinon n'hésitez pas à me demander des précisions

"Julien Bakmezdjian [MS]" a écrit :

Bonjour,

Il faut utiliser les 'event sink'. Il s'agit d'une assemblée .NET (C# ou
VB.NET) qui contient une classe implémentant IListEventSink.
Vous pouvez alors ajouter le code que vous souhaitez en fonction du type de
l'événement (check-in, check-out, ajout, suppression...).
Il faudra ensuite enregistrer la DLL dans les propriétés de la document
library (après avoir activer la propriété Event Handler dans les General
Setting du site central d'administration).
Toutes les précisions sont dans le SDK Sharepoint 2003, rubrique Platform ->
Microsoft WSS -> Programming tasks -> Programming with the object model ->
Handling Document library events.

Cordialement,

Julien


"pierre" a écrit dans le message de
news:
> Je voudrais qu'un événement déclenche du code lorsqu'un document est
approuvé.
> Est-ce possible?
> si oui comment faire?





Avatar
Stephane CORDONNIER [MVP]
Lorsqu'un élément est approuvé, cela déclenche un évènement Update.

Il faut alors regarder la valeur de la propriété ModerationInformation de l'objet SPListItem qui a été modifié.
--
Stephane CORDONNIER
http://www.sharepoint-france.com
[Microsoft MVP - France]



"pierre" a écrit :

d'abord merci pour votre réponse
ensuite,
j'ai déjà eu l'occasion de regarder l'interface IlisteventSink
sa méthode On event ne prend pas en compte l'événement d'approbation.
Cependant, après approbation un check-in est effectué automatiquement (du moins il me semble), je pourrais donc utiliser l'événement check-in en vérifiant le statut du document.
En revanche s'il est rejeté, je ne sais pas comment récupérer un événement rejet.
à moins qu'un check-in soit effectué aussi dans ce cadre?
j'éspère être assez clair sinon n'hésitez pas à me demander des précisions

"Julien Bakmezdjian [MS]" a écrit :

> Bonjour,
>
> Il faut utiliser les 'event sink'. Il s'agit d'une assemblée .NET (C# ou
> VB.NET) qui contient une classe implémentant IListEventSink.
> Vous pouvez alors ajouter le code que vous souhaitez en fonction du type de
> l'événement (check-in, check-out, ajout, suppression...).
> Il faudra ensuite enregistrer la DLL dans les propriétés de la document
> library (après avoir activer la propriété Event Handler dans les General
> Setting du site central d'administration).
> Toutes les précisions sont dans le SDK Sharepoint 2003, rubrique Platform ->
> Microsoft WSS -> Programming tasks -> Programming with the object model ->
> Handling Document library events.
>
> Cordialement,
>
> Julien
>
>
> "pierre" a écrit dans le message de
> news:
> > Je voudrais qu'un événement déclenche du code lorsqu'un document est
> approuvé.
> > Est-ce possible?
> > si oui comment faire?
>
>
>


Avatar
greg
Avant de faire appel à la propriété ModerationInformation, il faut tester si l'approbation est bien activée sur la bibliothèque car sinon une exception est soulevée.
Ex:

switch (listEvent.type)
{

}

"pierre" a écrit :

Je voudrais qu'un événement déclenche du code lorsqu'un document est approuvé.
Est-ce possible?
si oui comment faire?


Avatar
greg
Désolé, j'ai posté avant d'avoir tout mis :

switch (listEvent.type)
{
case SPListEventType.Update:
...
if (splEventLsit.EnableModeration)
{
if (spliItemConcerne.ModerationInformation.Status = SPModerationStatusType.Denied)
{
...
}
}
.....
}


Greg

"pierre" a écrit :

d'abord merci pour votre réponse
ensuite,
j'ai déjà eu l'occasion de regarder l'interface IlisteventSink
sa méthode On event ne prend pas en compte l'événement d'approbation.
Cependant, après approbation un check-in est effectué automatiquement (du moins il me semble), je pourrais donc utiliser l'événement check-in en vérifiant le statut du document.
En revanche s'il est rejeté, je ne sais pas comment récupérer un événement rejet.
à moins qu'un check-in soit effectué aussi dans ce cadre?
j'éspère être assez clair sinon n'hésitez pas à me demander des précisions

"Julien Bakmezdjian [MS]" a écrit :

> Bonjour,
>
> Il faut utiliser les 'event sink'. Il s'agit d'une assemblée .NET (C# ou
> VB.NET) qui contient une classe implémentant IListEventSink.
> Vous pouvez alors ajouter le code que vous souhaitez en fonction du type de
> l'événement (check-in, check-out, ajout, suppression...).
> Il faudra ensuite enregistrer la DLL dans les propriétés de la document
> library (après avoir activer la propriété Event Handler dans les General
> Setting du site central d'administration).
> Toutes les précisions sont dans le SDK Sharepoint 2003, rubrique Platform ->
> Microsoft WSS -> Programming tasks -> Programming with the object model ->
> Handling Document library events.
>
> Cordialement,
>
> Julien
>
>
> "pierre" a écrit dans le message de
> news:
> > Je voudrais qu'un événement déclenche du code lorsqu'un document est
> approuvé.
> > Est-ce possible?
> > si oui comment faire?
>
>
>