Un exemple d'un Workflow est la demande de congé des employés d'une entreprise.
Nouveau en V5
Les extensions (ou "triggers" (déclencheurs) permettent d'avoir un plus grand contrôle sur les données des process de workflow. Elles permettent notamment de transmettre les données issues du workflow vers d'autres composants de Silverpeas ou vers des systèmes externes.
Pour mettre en place une extension, il suffit d'écrire une classe Java qui doit hériter de la classe com.silverpeas.workflow.external.impl.ExternalActionImpl et implémenter la méthode execute().
Une fois la classe déployée, le modèle abstrait doit être modifié pour faire référence à l'extension à l'instant voulu grâce aux éléments triggers et trigger. Dans l'exemple ci-dessous, le trigger sendInKmelia permet d'archiver une demande de congés qui vient d'être validée. Les éléments param du trigger sont spécifiques au trigger. Selon les besoins, le nombre de paramètre peut être plus ou moins important.
Cet exemple permet de générer une publication dans un thème donné d'un composant de type GED lorsque la demande de congés est acceptée. La publication est nommée comme le spécifie le paramètre pubTitle. Elle contient un fichier PDF qui reprend l'intégralité de l'historique de la demande. Avec cette première version, le contenu de la publication est vide.
Nouveau en V5
Cette évolution permet de produire un fichier CSV contenant une ligne par demande. La première ligne contient le nom des différents champs. Cette fonction est accessible pour tous les rôles et se traduit par une nouvelle opération "Exporter au format CSV".
Avant téléchargement, une fenêtre permet de connaitre la taille du fichier à télécharger.
Pour activer cette fonction, il suffit d'agir sur le paramètre exportCSV :
Par défaut, toutes les données du dossier sont exportées. Cependant, il est possible de restreindre les données exportées en précisant celles à prendre en compte lors de l'export (paramètre fieldsToExport). Le nom des champs doivent être séparés nom par un point-virgule.