[Résolu]Webscript toute les taches terminée d'un workflow

cancel
Showing results for 
Search instead for 
Did you mean: 
leyer
Member II

[Résolu]Webscript toute les taches terminée d'un workflow

Bonjour tout le monde je suis actuellement entrain de me creer un dashlet me permettant de voir graphiquement l'avancement d'un workflow et j'aimerai savoir comment je peux recuperer toute les taches d'un workflow pour un site donné dans share.

Merci
9 Replies
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Je me suis fait un petit script pour trouver ca.
J'ai appelé mes workflow comme mes site donc j'arrive a les retrouver facilement en utilisant le js deja existant my tasks.
Je recupere donc tout les taches du site pour l'utilisateur connecté.

var tasks = new Array();
   var result = remote.call("/slingshot/dashlets/my-tasks");
   var result2 = remote.call("/api/sites/" + page.url.templateArgs.site);
   var site = eval('(' + result2 + ')').title;
   var sitename = site.split('_')[1].split(' ')[0].replace(/\s+/g, '');
   var data = eval('(' + result + ')');
   if (data.tasks !== null)
   {
      for (var i=0,len = data.tasks.length;i<len;i++)
      {
         if(data.tasks[i].description.replace(/\s+/g, '')==sitename){
            tasks.push(data.tasks[i]);
         }
      }
   }

Apres il me reste a trouver un moyen d'avoir toute les taches n'appartenant pas au user connecté et meme celle qui  ont deja été effectué…
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Bonjour tout le monde quelqu'un pourrait me guider pour recuperer tout les taches dont le statut est terminé ?
Tout cela a partir de mon webscript biensur Smiley Happy
Pour l'instant mon dashlet recupere les donnée du xml généré par jboss et mes les tache de l'utilisateur en vert.
Avec un scroll sur les taches avec mootools.
Me Reste plus qu'a mettre les taches terminé en rouge … encore la grace au xml mais je n'arrive pas a les recuperer ….
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Rebonjour tout le monde,
Je suis actuellement dans le my-task.get json ou je me suis rajouté un filtre pour avoir toute les taches completé le probleme c'est que j'utilise
http://wiki.alfresco.com/wiki/Workflow_JavaScript_API#Overview
Et j'essai de retrouver mon workflow que j'ai en Get mais
 workflow.getDefinitionByName('nom de mon workflow') 
Cela ne fonctionne pas ….
Mais je pourrais faire un workflow.completedTasks mais vu le nombre de workflow lancé cela serait bcp trop long ….

Help me plz
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Personne aurait une petit idée ?
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Bonjour tout le monde j'ai ecri un script qui me permet bien de retrouver mon workflow etc le probleme est qu'il me retourne que les tache ouvertues et je les voudraient toute ….


var list = new Array();
   var name= url.templateArgs.name;
   var selectedworkflow;
   var tasks = new Array();;
   var works = workflow.getDefinitionByName("jbpm$workflowname").getActiveInstances();
  
   for each(single in works)
   {
      if(single.description == name){
         selectedworkflow = single.getPaths();
         for each(path in selectedworkflow){
            tasks=path.getTasks();
               for each(task in tasks){
                  list.push(task);
               }
         }
      }
   }
   model.tasklist = list;
   model.work = works;
   model.name = name;
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Une idée ? je bloque depuis 2 jours …
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

J'ai finalement trouvé une solution que je partage avec vous ^^
J'ai rajouté une fonction dans la class jscriptworkflow instance cela semble fonctionner pour l'instant ….
Je vous tiens au courant

public Scriptable getAllTasks() {
      WorkflowService workflowService = serviceRegistry.getWorkflowService();
      WorkflowTaskQuery query = new WorkflowTaskQuery();
      query.setActive(active);
      query.setTaskState(null);
      query.setProcessId(id);
      ArrayList<Serializable> completedtasks = new ArrayList<Serializable>();
      List<WorkflowTask> tasks = workflowService.queryTasks(query);
      for (WorkflowTask task : tasks)
      {
         completedtasks.add(new JscriptWorkflowTask(task, this.serviceRegistry, this.scope));
      }
      Scriptable completedTasksScriptable =
         (Scriptable)new ValueConverter().convertValueForScript(this.serviceRegistry, this.scope, null, completedtasks);         
      
      return completedTasksScriptable;
   }
leyer
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Cela fonctionne parfaitement voici le résultat en image de mon dashlet que tout les users peuvent voir cela permet à tout le monde de voir ou en est rendu le projet^^
[img]http://img709.imageshack.us/img709/5797/sanstitre1ki.png[/img]
Les tâches en vert sont celle terminée, les rouge en cours et le menu de gauche permet de slider sur les taches ouvertes. ^^
:mrgreen:
ahmedbnf
Member II

Re: [Résolu]Webscript toute les taches terminée d'un workflow

Bonjour,

@leyer je voudrais faire la même chose je ne sais pas d’où commencer pour créer une dashlet qui liste les tâches terminées dans alfresco share