Les workflows, comme tout le reste dans Nuxeo Content Services Platform, sont entièrement personnalisables avec Nuxeo Studio. C’est plutôt pratique car la flexibilité et l’extensibilité du moteur de workflows est incroyable et que Studio vous permet d’effectuer des modifications en toute simplicité. On m’a récemment demandé s’il était possible d’inclure un flux de commentaires directement dans un workflow pour que les participants puissent ajouter un commentaire dès qu’ils terminent une tache et pour qu’ils puissent accéder aux commentaires précédents. La réponse est évidemment positive, mais le mieux, c’est que la personnalisation ne prend pas plus de 5 minutes.

Workflow Comment Feed

Flux de commentaires des workflows

La première étape est de configurer une variable de workflow pour stocker les commentaires. Ici, il nous suffit d’ajouter un paramètre String à valeurs multiples à notre définition de workflow. Appelons-le « comments ».

Workflow variables Editor

Éditeur de variables de workflow

Il nous faut ensuite définir une variable de commentaire dans chaque tache de workflow où nous pouvons permettre aux utilisateurs autorisés de saisir des commentaires. Il nous suffit d’ajouter un paramètre String simple que nous appelons « comment ».

Node Variables Editor

Éditeur de variables de nodes

Après ça, nous pouvons configurer l’organisation des taches de la même façon que nous configurons les organisations pour les types de contenus. Nous pouvons ici utiliser un widget de liste en lecture seule pour la variable de workflow « comments » et un widget textarea pour le paramètre « comment ».

Task Form Editor

Éditeur de tache

Enfin, la dernière pièce pour compléter le puzzle est d’injecter la tache « comment » dans le flux de commentaires du workflow lorsque la tache est réalisée par l’utilisateur affecté. Si vous maîtrisez déjà Nuxeo Platform, vous avez probablement deviné qu’il fallait passer par une automatisation. Il ne suffit que d’une chaîne de sortie qui ajoute la tache « comment » dans le flux de commentaires du worfklow.

Task Output Chain Configuration

Configuration de la chaîne de sortie de la tache

Configuration de la chaîne d’automatisation - Context.FetchDocument - Context.SetWorkflowVar: name: comments value: "@{Fn.concatenateIntoList(WorkflowVariables[\"comments\"], [\"\"+CurrentUser.actingUser+\": \"+NodeVariables[\"comment\"]])}" Et c’est tout ! Notre workflow dispose désormais d’un flux de commentaires !