Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Intercepter un événement dans SharePoint 2003

4 réponses
Avatar
galoseau.mathieu
Bonjour.

J'ais fais un programme en C# qui converti les fichiers Excel en PDF.
J'ai install=E9 un SPS 2003 sur W2003 serveur SQL 2000.
J'ais cr=E9=E9e une biblioth=E8que de documents Excel avec validation.

Je voudrai donc capturer l'=E9v=E9nement de validation (approuver) et a ce
moment la je cr=E9e un PDF a partir du Excel, sans que l'utilisateur ne
voie rien.

Pour arriver =E0 mes fins j'ai cherch=E9 sur le net et dans le livre
d'Erol Giraudy.

J'ai pue comprendre :

-cette action s'appelle un events sinks
-une soci=E9t=E9 nomm=E9 teamplate a cr=E9=E9 un administrateur de workflow=
avec
lequel on peut g=E9rer l'=E9v=E9nement.
-il faut faire un assenbly (dll).
- je suis trais mauvais en anglais!

Donc Mes question sont :

-c'est possible avec Visual 2003 pour SPS 2003 ?
-comment on fait pour intercepter un =E9v=E9nement ?
-ou je dois m=E8tre ma dll ?
-le logiciel de teamplate mentionner dans le livre d'Erol est t'il
gratuit ?
-j' imagine de pour programmer des web parts il faut des assenbly
(dll) alors les quelles ? Et ou je peux les trouver ? Elle marche avec
Visual 2003 ?
-j'ai t=E9l=E9charg=E9 un SDK mai a l'int=E9rieur il n'y avait qu'un fichier
d'aide, c'est normale ?
-ou je peu trouver un exemple pour intercepter un =E9v=E9nement compatible
avec ma configuration ?

Voila c'est tout.
Ci quelqu'un peu r=E9pondre a quelque une de mes questions je vous en
serai trait reconnaissant.
Merci d'avance.

4 réponses

Avatar
Sébastien PICAMELOT
Bonjour,

Le SDK ne contient que le fichier d'aide, c'est normal. La plateforme de
développement requise est Windows Server 2003 + SPS2003 + Visual Studio 2003
(il est possible de faire sans SPS2003 en référençant les assemblies, mais ce
n'est pas ce qu'il y a de plus simple). La plupart du temps, les développeurs
SharePoint travaillent sur VPC à cause de cette contrainte. Il voud faudra
référencer les DLL SharePoint dans votre projet.

Pour intercepter un evenement, il vous faudra une classe implémentant
l'interface IListEventSink que vous attacherez à votre bibliothèque.

Vous trouverez un exemple d'event sink ici :

code : http://blogs.msdn.com/lamonth/pages/372071.aspx
déploiement : http://blogs.msdn.com/lamonth/pages/372072.aspx

J'espère que cette réponse vous sera utile.
Cordialement,

--
Sébastien PICAMELOT
--------------------------------------
http://blogs.developpeur.org/gribouillon



"" a écrit :

Bonjour.

J'ais fais un programme en C# qui converti les fichiers Excel en PDF.
J'ai installé un SPS 2003 sur W2003 serveur SQL 2000.
J'ais créée une bibliothèque de documents Excel avec validation.

Je voudrai donc capturer l'événement de validation (approuver) et a ce
moment la je crée un PDF a partir du Excel, sans que l'utilisateur ne
voie rien.

Pour arriver à mes fins j'ai cherché sur le net et dans le livre
d'Erol Giraudy.

J'ai pue comprendre :

-cette action s'appelle un events sinks
-une société nommé teamplate a créé un administrateur de workflow avec
lequel on peut gérer l'événement.
-il faut faire un assenbly (dll).
- je suis trais mauvais en anglais!

Donc Mes question sont :

-c'est possible avec Visual 2003 pour SPS 2003 ?
-comment on fait pour intercepter un événement ?
-ou je dois mètre ma dll ?
-le logiciel de teamplate mentionner dans le livre d'Erol est t'il
gratuit ?
-j' imagine de pour programmer des web parts il faut des assenbly
(dll) alors les quelles ? Et ou je peux les trouver ? Elle marche avec
Visual 2003 ?
-j'ai téléchargé un SDK mai a l'intérieur il n'y avait qu'un fichier
d'aide, c'est normale ?
-ou je peu trouver un exemple pour intercepter un événement compatible
avec ma configuration ?

Voila c'est tout.
Ci quelqu'un peu répondre a quelque une de mes questions je vous en
serai trait reconnaissant.
Merci d'avance.




Avatar
galoseau.mathieu
Merci pour ta réponse.
Bien que je n'ai pas tout comprit (je suis trais mauvais en anglais!
mais Google translate est là pour sa!).
Ok alors il me reste 2 ou 3 petite question qui me block encore:

-je dois créer quoi comme type de projet dans Visual 2003? Un Web
part library? Une bibliothèque de classes? Ou autre?

- il est é écrie :
Vous devez d'abord activer les événements pour les bibliothèques de
documents. Les événements sont désactivés par défaut.
J'ai parcourue tout les menus des bibliothèques de documents mais je
n'ai pas vue ou je peu activer les événements.

Et certain de mes neurone on été déconnecter arriver à GAC GUID. Je ne
c'est même pas quoi demander à ce sujet !

-et une foi créé ma dll, je suppose que je dois aller dans sps ->
ma bibliothèque de document -> modifier les paramètres et les colonnes
->Modifier les paramètres avancés -> et la je peux mètre "Nom
d'assembly :" ET "Nom de classe : " ? C'est ici que je dois appeler
mon assenby?
- l'assenby en lui même, la dll, je dois la mètre où?
Avatar
Sébastien PICAMELOT
La DLL doit être accessible par le serveur. Au choix, vous pouvez la placer
dans le répertoire bin de votre site web, ou dans le GAC (global assembly
cache, répertoire C:WindowsAssembly).

Vous trouverez plus d'information sur ce qu'est le GAC ici :
http://msdn2.microsoft.com/fr-fr/library/yf1d93sz(VS.80).aspx. Si vous
comptez déployer la DLL dans le GAC, il vous faudra lui générer un strong
name key avec l'outil sn.exe (dans le répertoire de Visual Studio)

Pour utiliser ces event sinks, il vous faut au préalable activer la gestion
des évenements dans la console d'administration centrale. Vous trouverez la
marche à suivre ici :
http://msdn2.microsoft.com/en-us/library/ms916857.aspx#odc_sharepoint_wsseventing_enablingeventsfordocumentlibraries (en français :-))

Bon courage,

Sébastien PICAMELOT.
Avatar
galoseau.mathieu
Bonjour Sébastien, Merci t'ai génial !

Sa marche !!

Sauf un petit truc j'arrive à capturer les événements updat, copy,
delet, move, c'est déjà pas mal tu me diras.^-^
Mais moi je voudrai créer mon pdf qu'au moment ou un fichier est
approuver et pas quand il est rejeter. Donc dans la liste:

' -1 : Invalid
' 0 : Insert
' 1 : Update V
' 2 : Delete() V
' 3 : Move or Rename V
' 4 : Copy V
' 5 : CheckIn
' 6 : CheckOut
' 7 : UnCheckOut

Y en a t'il un qui capture mon événement approbation validé? C'est
peut aitre pas possible de capturer que l'événement validation?

Merci quand même t'ai sympa et en plus t'ai doué parce que trouver des
infos comme sa sur le site de Microsoft je di chapeau. :-)
Grand Grand merci.