Utiliser le Workflow Management Service

On a tous besoin de bénéficier des fonctionnalités du K2 workspace dans nos applications. Les exemples les plus fréquents sont les besoins de rediriger ou déléguer des tâches, de déclarer des utilisateurs absents ou encore de stopper des instances en cours. On pourrait dire à nos utilisateurs d’utiliser le K2 workspace, mais bon, avouons le, il n’est pas super sexy … (d’ailleurs, il va enfin être remis au goût du jour dans la prochaine version de K2 – plus que quelques semaines à patienter). Bref, le K2 workspace étant bâtit sur les API K2, il existe des fonctions de programmation qui permettent d’accéder à ces fonctionnalités et pour les allergiques au code, un custom service broker, appelé Workflow Management (téléchargeable ici) met ces fonctionnalités d’administration disponibles via des smartobjects dans vos applications K2.

Installation

Pour installer le service :

    1. Copier le fichier k2field.workflowmanagement.dll sur le serveur K2, dans le répertoire ServiceBroker (par défaut : C:\Program Files (x86)\K2 blackpearl\ServiceBroker).
    2. Lancer le smartobject service tester, cliquer sur “Register Service Type” et sélectionner dans la liste déroulante le service “K2Field.WorkflowManagement.WorkflowManagement” et choisir un display name :
      Configuration service type
    3. Déplier la liste des services installés, localiser le service ayant pour nom le display name choisit en étape 2 (“WorkflowManagement” dans mon cas), et enregistrer une nouvelle instance de ce service :
      Configuration service instance
    4. Dans le paramétrage proposé, vérifier que la chaîne de connexion est exacte (l’attribut host doit référencer le serveur K2). Le paramètre ExceptionOOFAccount doit contenir un compte qui recevra les absences par défaut (si l’utilisateur ne renseigne pas de délégué).

Utilisation du service

Une fois le service instancié, différentes méthodes sont proposées. Elles sont classées dans 4 catégories différentes :

  • Process management : permet de gérer des fonctionnalités sur les processus
    • Démarrage d’une instance d’un processus
    • Suppression d’une instance d’un processus
    • Mise à jour de la valeur d’un datafield
    • Mise à jour du folio d’une instance de processus
    • Lister les datafields et leur valeur pour une instance précise
  • Serveur management : propose des méthodes pour interagir avec le serveur K2
    • Lister les valeurs de la string table
    • Mettre à jour une valeur de la string table
    • Déclarer un utilisateur absent
    • Déclarer un utilisateur absent sur une période donnée (fonctionnel à partir de la 4.6.10)
    • Supprimer une absence
    • Charger la liste des tâches
  • Task management : propose des méthodes sur des tâches
    • Libérer une tâche
    • Déléguer une tâche
    • Rediriger une tâche
    • Exécuter un goto activity
    • Lister les erreurs du serveur K2
    • Faire un “retry” sur une erreur
    • Agir sur une tâche
    • Lister les actions possibles pour une tâche donnée
  • User management : gérer les droits
    • Mettre à jour les droits pour un processus donné
    • Lister les droits que possède un utilisateur
    • Lister les droits donnés sur un processus
Méthodes proposées

L’ensemble des méthodes listées ci-dessus deviennent alors utilisables dans vos applications (processus, formulaires, rapports), sans écrire de code, via les smartobjects.

N’hésitez pas à utiliser les commentaires si vous avez des questions.

pierre

Chef de projet chez K2 France, ex consultant solution et blogueur à ses heures perdues! Twitter: @Pierrot_12 Linkedin: Pierre NOILHAN

One thought to “Utiliser le Workflow Management Service”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.