Lorsque l'on travaille avec SharePoint 2007 (WSS V3 ou MOSS), les WorkFlows deviennent très rapidement obligatoires. SharePoint Designer est pour cela très souvent utilisé.
Peter Bischoff a rédigé deux articles sur le sujet :
Je ne parlerai pas ici des différences entre les WF avec Designer des WF avec VS.NET, mais toujours est-il que bien rapidement on se retrouve un peu perdu dans les sites ayant des WorFlows.
Voila donc quelques astuces qui peuvent être utiles.
Comment avoir la liste des WorkFlows hébergées dans la base de contenu d'une WebApp SharePoint
La question est donc de savoir rapidement quels sont les WorkFlows en production et qui les a créé (histoire d'avoir une personne à taper :)).
Voila donc une requête SQL utilisable dans ce sens :
USE [WSS_Content_DB]
SELECT
WF.[Name] AS WorkFlowName,
WF.Created AS CreationDate,
USR.tp_login AS UserLogin,
USR.tp_Title AS UserName
FROM
dbo.WorkflowAssociation WF
INNER JOIN dbo.UserInfo USR
ON (WF.Author = USR.tp_ID AND WF.SiteId = USR.tp_SiteID)
ORDER BY
WF.Created DESC
Cette requête vous retourne un jeu de résultat contenant :
- Le nom du WorkFlow
- La date de création
- La personne ayant posté ce WorkFlow (Login et nom)
Attention lors du développement
Il est important de noter que à chaque fois que le développeur clique sur Finish dans Designer, il cree une nouvelle version du WorkFlow qui prend le nom sous la forme :
- WorkFlowName (xx)
Le xx représente le numéro (nombre de fois qu'il a été cliqué sur Finish) de version. Ainsi le WorkFlow ayant la valeur la plus élevée dans la page de gestion est le dernier posté depuis SharePoint Designer.
Il faut donc faire très attention avec cet outil, car on risque rapidement de se trouver avec 10 versions différentes du même WorkFlow qui restent toutes actives comme le prouve la capture suivante (page WorkFlow Setting>Remove WorkFlow de la liste concernée).
Les WorkFlows et l'historisation
Comme je l'ai dit juste avant, à chaque fois que vous modifiez et cliquez sur Finish, une nouvelle version de votre WorkFlow est enregistrée dans SharePoint. Celle-ci reste présente que vous la supprimiez ou non par la page de "WorkFlow Settings". On voit donc dans la vision des version précédentes pour le fichier XOML toutes les versions existantes
Ainsi, chaque fichier modifié compris dans ce WorkFlow est republié avec un nouveau code version. Il est donc bon de faire du nettoyage des versions précédentes de chaque fichier lors de la mise en production de la version finale.
Romelard Fabrice [MVP]
Commentaires
Enregistrer un commentaire