Je décrivais dans mon dernier article sur les flux de travail à quel point ces derniers ouvrent des possibilités avec la version 2013. Je frappe toutefois à l’occasion des erreurs qui peuvent laisser perplexe. Dans cet article, j’en décris quelques-unes avec des solutions.

Compte système : le mal

Tout d’abord, évitez-vous facilement des problèmes: ne créez jamais vos flux de travail avec le compte système. Des enjeux peuvent surgir de cela sans raison apparente.

S’assurer que le compte a accès à toutes les listes nécessaires

Il m’est arrivé d’ouvrir un flux de travail pour modification et réaliser avec horreur que des actions avaient disparues sans raison. Cela était finalement dû au fait que les actions s’exécutaient sur des listes  que mon compte n’avait pas accès.

Une liste particulière à tenir compte est la Workflow History List, une liste cachée qui enregistre l’historique du flux de travail. Si le compte ne peut écrire dedans, le flux restera coincé dès la première écriture d’historique. Cette liste étant cachée, il faut y accéder par SharePoint Designer pour modifier ses droits.

Cette situation peut arriver si on brise les droits pour une liste et qu’on fait un flux de travail dessus avec un compte qui y a des droits particuliers plus élevés que sur le reste du site.

Contourner les champs Lookup

J’ai frappé un bogue dans la première version de Workflow Manager avec les lookup pour trouver un élément d’une autre liste:

logging-status

Pendant 5 minutes, il y a un message: Retrying last request. Next attempt scheduled in less than one minute. Details of last request: HTTP NotFound to […] . Puis, le flux de travail est annulé avec le message: List does not exist. The page you selected contains a list that does not exist.[…]

Le contournement que j’ai utilisé est de m’assurer de stocker dans une colonne cachée le numéro « ID » et de rechercher les informations par cet intermédiaire plutôt que par le champ officiel de Lookup. Par exemple, pour une liste New Hire qui se connecte à une liste Sensitive, je crée une colonne SensitiveID dans la liste New Hire de type Nombre:

Drapeaux

 

Je peux ensuite trouver les informations de la liste Sensitive en faisant la jointure par cette colonne plutôt que la colonne Lookup standard:

Steps

 

Voilà, n’hésitez pas à ajouter des erreurs et contournements courants dans les commentaires. Pour ma part, je compte écrire d’autres articles sur les flux de travail SharePoint Designer 2013.

Fermer le menu