Annuler une tâche grâce a son UUID.

1
0
-1

Bonjour à tous,

j'aimerais avoir plus d'info sur les API.

Je m'explique :

j'ai un processus qui permet la modification/annulation d'un enregistrement. J'aimerais que celui-ci, quand je fais une de ses 2 actions, modifie une tâche en cours dans la boite de réception pour l'annuler.

Je me suis donc un peu intéresser aux API, j'arrive à récupérer le nom de mon processus UUID (qui correspond à l'id de la tâche?) que je vais enregistrer en base. Puis le récupérer dans mon processus d'annul/modif par rapport à un ID d'enregistrement, et permettre l'annulation voir la suspension de ce dernier grâce à l'UUID.

Est-ce possible?

Merci d'avance pour votre aide

2 answers

1
0
-1

Merci pour ta réponse haris.

J'ai fais quelques essais mais sans succès..

Un petit récap de ce que j'ai :

Je récupère dans mon processus 1 le UUID :

import org.ow2.bonita.facade.runtime.ProcessInstance;

procName = processInstance.getUUID().toString()

Dans mon processus 2 :

import org.ow2.bonita.facade.RuntimeAPI;

def idProcess = "processus1--1.0--1"  //<= uuid du processus qui sera get dans la base.

AccessorUtil.getRuntimeAPI().cancelProcessInstance(idProcess)

Breff tout ça me dit : No signature of methode....................... is applicable for type:String

Pourtant le UUID ressort bien sous forme de string non? J'ai un peu de mal avec les API j'avou..

PS : je suis sur bonita 5.9

A+

Comments

Submitted by haris.subasic on Wed, 05/07/2014 - 16:47

Dans la version 5.9, UUID n'est pas de type String, mais de type propre - ProcessInstanceUUID.

1
0
-1

Bonjour,

ProcessInstanceUUID est l'identifiant unique du cas, et pas d'une tâche. Si vous voulez annuler un cas, vous pouvez utiliser la méthode cancelProcessInstance , et si vous voulez changer l'état d'une activité, vous pouvez utiliser setActivityStateByName , par example.

Cordialement, Haris

Notifications