Fit Your Apps !   

Blog Post

Mille et une façons de déclencher un workflow K2 Blackpearl

  • par Hamza Cheref
  • 14 août, 2017

Comment déclencher manuellement et automatiquement un workflow K2 Blackpearl

Comment déclencher manuellement et automatiquement un workflow K2 Blackpearl 

Le démarrage d'un flux de travail K2, qu'il soit manuel (via un formulaire) ou automatique (via un planificateur), signifie la création d'une nouvelle instance de workflow. La création de cette instance peut se faire de plusieurs façons.  En voici quelque-unes :

 1 - Via K2 Workspace :
La façon manuelle la plus simple de déclencher un workflow est de se connecter sur [K2 Workspace] (l'espace d'administration des workflows K2 Blackpearl), dans la catégorie [Workflow Server\Instances] affichant la liste des instances en cours d'exécution, il suffit de cliquer sur [Start New]. On utilise généralement cette façon en cas de démarrage (ou de redémarrage) d'une instance de workflow arrêtée par erreur.

 2 - Via un formulaire K2 Smartform :

Dans un formulaire K2, la création d'une instance de workflow se fait via l'action [Start a workflow] sous la catégorie [Workflow Interaction].
 3 - Via un IPCEvent :
Si vous souhaitez démarrer un sous-workflow à partir d'un autre workflow, il suffit d'éditer votre workflow principal et de faire glisser un [IPCEvent] depuis l'Event Wizards. Vous aurez ensuite la possibilité d'exécuter ce sous-workflow de manière synchrone (attendre le retour du sous-workflow pour continuer le workflow principal) ou de manière asynchrone (continuer le workflow principal sans attendre le retour du sous-workflow).
 4 - Via l'API K2 Workflow Client :
Vous pouvez aussi déclencher votre workflow à partir d'une autre application développée en C# en utilisant l'API K2 Workflow Client. pour cela il suffit d'ajouter les réferences [SourceCode.HostClientAPI] et [SourceCode.Workflow.Client] à votre application et puis exécuter le code C# suivant :
5 - Via PowerShell :
En Powershell c'est possible aussi de la manière suivante :

 6 - Via une tâche planifiée windows :

Si vous voulez planifier le déclenchement d'un workflow K2 à une date ou une fréquence particulière, il suffit pour cela d'utiliser une tâche planifiée Windows.
Dans le champ [Action] sélectionner [Démarrer un programme].
Dans le champ [Programme/script] saisir [powershell].
Dans le champ [Ajouter des arguments] saisir le code powershell suivant :

-Command "Add-Type -AssemblyName ('SourceCode.Workflow.Client, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d'); $MyConnexion = New-Object -TypeName SourceCode.Workflow.Client.Connection; $MyConnexion.Open('LOCALHOST'); $MyProcessInstance = $MyConnexion.CreateProcessInstance('Customer Tickets\Customer Tickets Workflow'); $MyProcessInstance.Folio = 'MY PROCESS INSTANCE TITLE'; $MyConnexion.StartProcessInstance($MyProcessInstance); $MyConnexion.Close"

 7 - Via un Job SQL Server :
Vous avez aussi la possibilité de planifier le déclenchement d'un workflow à une date ou une fréquence particulière à l'aide d'un Job SQL Server, il suffit pour cela de vous connecter à SQL Management Studio, dans la catégorie [SQL Server Agent] créer un nouveau [Job] et renseigner comme suit les paramètres de la step :
Dans le champ [Type] sélectionner [Operating system (CmdExec)].
Dans le champ [Command] saisir le code powershell suivant :

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe "Add-Type -AssemblyName ('SourceCode.Workflow.Client, Version=4.0.0.0, Culture=neutral, PublicKeyToken=16a2c5aaaa1b130d'); $MyConnexion = New-Object -TypeName SourceCode.Workflow.Client.Connection; $MyConnexion.Open('LOCALHOST'); $MyProcessInstance = $MyConnexion.CreateProcessInstance('Customer Tickets\Customer Tickets Workflow'); $MyProcessInstance.Folio = 'MY PROCESS INSTANCE TITLE'; $MyConnexion.StartProcessInstance($MyProcessInstance); $MyConnexion.Close"


 8 - Via un Workflow-SmartObject :

A la différence d'un workflow classique, un Workflow-SmartObject est un workflow lié à un SmartObject. ce dernier possède comme paramètres d'entrée le folio du workflow ainsi que les process-Datafields, et possède aussi la méthode [Start Process].
Afin donc de déclencher le workflow il suffit de créer un nouvel enregistrement dans ce SmartObject, ainsi la méthode [Start Process] s'exécute automatiquement.
Il est aussi possible de faire appel à cette méthode à partir du Service instance [Workflow Service], et utiliser le ServiceObject directement dans vos SmartBox ou Composite-SmartObjects.

 9 - Via K2 Management V 4.7 :

Et en fin, si votre serveur K2 est sous la version 4.7 ou plus, la nouvelle fonctionnalité [Schedules] vous permet de planifier le démarrage automatique de vos workflows à une date ou une fréquence particulière (1 fois par jour, tous les lundi, etc..). Il suffit de vous connecter sur [K2 Management] (l'espace d'administration des workflows K2 Blackpearl V 4.7), Dans la catégorie [Workflow Server\Schedules] affichant la liste des planifications, cliquer sur [+ New].

Neuf façons de déclencher un workflow K2 ont été présentées dans cet article. À vous maintenant de choisir la façon qui.. fits your apps !
par Hamza Cheref 11 avril 2018

L'intelligence artificielle dans les processus métiers d'entreprise

Et l'IA par-ci, et l'IA par-là ! On ne jure que de l'IA depuis quelques temps, des prévisions et des annonces à la pelle ne cessent de voir le jour, promettant la quatrième révolution industrielle qui changera radicalement la surface de la terre, cette terre que nous, espèce humaine allons apparemment bientôt devoir la partager avec une autre espèce qu'est les Robots ! Mmm.. j'ai comme l'impression de regarder une publicité commerciale qui essaye de me vendre les merveilles d'un produit qui, au final, ne me servirait peut-être pas a grand-chose, car même si les investissements sur les technologies de l'IA dans le monde sont estimés à être dix fois plus élevés d'ici quelques années, une grande incertitude plane sur le retour de ses investissements.

par Hamza Cheref 28 février 2018

Comment afficher une liste de données SharePoint sous format graphique en utilisant HighCharts

Highcharts est une librairie graphique multi-plateforme basée sur JavaScript. Optimisées pour appareils mobiles, elle permet l'intégration de graphiques réactifs rendant les données beaucoup plus interactives et facile à comprendre. Afin d'intégrer cette librairie dans SharePoint Online et utiliser ses graphes pour visualiser les informations de vos listes, vous devez récupérer d'abord les données de ces listes à l'aide d'un modèle de programmation client (comme CSOM Client-side Server Object Model ou JSOM JavaScript Object Model ou REST ) comme ci-dessous avec JSOM :
par Hamza Cheref 2 janvier 2018

Comment configurer l'attribution des tâches aux participants d'un flux de travail K2 Blackpearl

Il est très important lors de la modélisation d'un flux de travail de prendre en considération la façon de configurer l'affectation des tâches aux utilisateurs participants, car une mauvaise configuration, même si elle peut répondre aux besoins fonctionnels, pourrait avoir un impact négatif sur les performances de votre plateforme. Et c'est pour quoi, il est primordiale de bien comprendre le fonctionnement des règles de destination dans un workflow K2.
Show More
Share by: