cancel
Showing results for 
Search instead for 
Did you mean: 

Griser un bouton transaction

slipknotik
Champ on-the-rise
Champ on-the-rise
Salut a tous ;
j'ai un workflow de validation initialisé par un acteur qui est responsable de débuter le workflow à travers une transaction "envoyer doc" et d'en finir après la  validation du doc par certains acteurs à travers une transaction "imprimer", donc il existe deux boutons dans la tache de cette utilisateur "envoyer doc" et "imprimer".
ce que je veux faire est de griser le bouton "imprimer" tant que la validation du doc n'est pas réalisé.
alors comment faire ?
merci
6 REPLIES 6

jayjayecl
Confirmed Champ
Confirmed Champ
normalement ces deux taches sont différentes, et ne possèdent qu'une transition chacune.
Du coup, je ne comprends pas le besoin (il n'y pas un seul ecran avec "lancer workflow" et "terminer workflow")

slipknotik
Champ on-the-rise
Champ on-the-rise
Les deux bouton se trouvent dans le même écran, car c'est le même acteur qui débute et met fin au workflow de validation

jayjayecl
Confirmed Champ
Confirmed Champ
J'ai bien compris qu'ils s'agit du même acteur.
Cependant, les écrans de tâches ne sont pas fonction des acteurs, mais des tâches : il y a un écran par tâche.
Pouvez-vous fournir votre process-definition.xml ?

slipknotik
Champ on-the-rise
Champ on-the-rise
voila mon fichier validation_processdefinition.xml :

<?xml version="1.0" encoding="UTF-8"?>

<process-definition  xmlns="urn:jbpm.org:jpdl-3.2"  name="wf:validation">
   <swimlane name="initiator"></swimlane>   
   <swimlane name="RO">
   <assignment actor-id="RO"/>
   </swimlane>
   <swimlane name="RS">
   <assignment actor-id="RS"/>
   </swimlane>
   <swimlane name="DG">
   <assignment actor-id="DG"/>
   </swimlane>
   <start-state name="Debut">
   <task name="wf:Submit" swimlane="initiator"/>
      <transition to="Commercial">
            
      </transition>
   </start-state>


   <task-node name="RS">
   <task name="wf:RS_Tache" swimlane="RS"/>
   
      <transition to="RO" name="Reviser">
      <action  class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
         {
      var mail= actions.create("mail");
      mail.parameters.to=RO.properties.["cm:email"];
      mail.parameters.from=RS.properties.["cm:email"];
      mail.parameters.subject="Validation Doc: pour action";
      mail.parameters.text= "Veuillez corriger le document" ;
       }
      </script>
      <script>
      
         {
      var mail= actions.create("mail");
      mail.parameters.to=initiator.properties.["cm:email"];
      mail.parameters.from=RS.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : pour info";
      mail.parameters.text= "Le document doit tre rviser" ;
       }
      
      </script>
      </action>
      
      
      
      </transition>
      <transition to="DG" name="valider RS">
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
            {
      var mail= actions.create("mail");
      mail.parameters.to=RS.properties.["cm:email"];
      mail.parameters.from=DG.properties.["cm:email"];
      mail.parameters.subject="Validation Doc :pour action";
      mail.parameters.text= "Veuiller examiner le document" ;
       }
      
      </script>
      
      
      </action>
      
      
      </transition>
   </task-node>

   <task-node name="RO">
   <task name="wf:RO_Tache" swimlane="RO"/>
      <transition to="Commercial" name="envoie version corrige">
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
            {
      var mail= actions.create("mail");
      mail.parameters.to=initiator.properties.["cm:email"];
      mail.parameters.from=RO.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour action";
      mail.parameters.text= "Le document est corrig" ;
       }
      </script>
      </action>
      
      
      
      </transition>
   </task-node>

   <task-node name="DG">
   <task  name="wf:DG_Tache" swimlane="DG"/>
      <transition to="RO" name="reviser DG">
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
            {
      var mail= actions.create("mail");
      mail.parameters.to=RO.properties.["cm:email"];
      mail.parameters.from=DG.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour action";
      mail.parameters.text= "Le document doit tre rviser" ;
       }
      </script>
      </action>
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">>
         <script>
            {
      var mail= actions.create("mail");
      mail.parameters.to=RS.properties.["cm:email"];
      mail.parameters.from=DG.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour info";
      mail.parameters.text= "Le document doit tre rviser" ;
       }
      </script>
      </action>
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
         <script>
            {
      var mail= actions.create("mail");
      mail.parameters.to=initiator.properties.["cm:email"];
      mail.parameters.from=DG.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour info";
      mail.parameters.text= "Le document doit tre rviser";
       }
      </script>
      </action>
      </transition>
      <transition to="Commercial" name="Valider DG"></transition>
   </task-node>

   <task-node name="Commercial" >
   <task name="wf:Commercial_Tache" swimlane="initiator" />
      <transition to="RS" name="envoie doc">
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
   var test = bpm_package;
   var doc = test.children[0];
   doc.addAspect("cm:versionable");
   doc.save();
      </script>
      </action>   
      
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
               {
      var mail= actions.create("mail");
      mail.parameters.to=RS.properties.["cm:email"];
      mail.parameters.from=initiator.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour action";
      mail.parameters.text= "Veuiller valider le document" ;
       }
      </script>
      </action>
      
      
      </transition>
      <transition to="end-state1" name="Imprimer">
      <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
      <script>
               {
      var mail= actions.create("mail");
      mail.parameters.to=RS.properties.["cm:email"];
      mail.parameters.to=RO.properties.["cm:email"];
      mail.parameters.to=DG.properties.["cm:email"];
      mail.parameters.from=initiator.properties.["cm:email"];
      mail.parameters.subject="Validation Doc : Pour action";
      mail.parameters.text= "le document est prs pour impression" ;
       }
      </script>
      </action>
      
      </transition>
   </task-node>


   <end-state name="end-state1"></end-state>


</process-definition>


et mon modele de workflow :

<?xml version="1.0" encoding="utf-8" ?>
<model name="wf:workflowmodel"
xmlns="http://www.alfresco.org/model/dictionary/1.0">
   <description>Validation Workflow</description>
   <author>Jack</author>
   <version>1.0</version>
   
<imports>
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm"/>
<import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm" />
</imports>



<namespaces>
<namespace uri="http://www.alfresco.org/model/workflow/1.0" prefix="wf"/>
</namespaces>
<types>
<type name="wf:Submit">
<parent>bpm:startTask</parent>
<properties>
   <property name="bpm:description">
      <type>d:text</type>
   </property>
</properties>
</type>
<type name="wf:Commercial_Tache">
<parent>bpm:workflowTask</parent>
<overrides>

</overrides>
</type>
<type name="wf:RO_Tache">
<parent>bpm:workflowTask</parent>

</type>
<type name="wf:RS_Tache">
<parent>bpm:workflowTask</parent>


</type>
<type name="wf:DG_Tache">
<parent>bpm:workflowTask</parent></type>


</types>
</model>

jayjayecl
Confirmed Champ
Confirmed Champ
En fait votre workflow est, si vous me le permettez, mal construit.
Vous envisagez la construction d'un workflow à partir de l'axe de reflexion "utilisateur" : vous créez un task-node par utilisateur.
Un workflow se crée à partir de l'axe de reflexion "tâches" : il faut créer un un task-node par type de tâche.

En l'occurence, puisqu'il s'agit de la tâche "Commercial", celle-ci doit etre scindée en deux.
Une première tâche juste après le start-state, avec la transition "envoie doc", et une tâche ultérieure, après "RO_Tache", avec la transition d'impression.

J'espère vous avoir éclairé

slipknotik
Champ on-the-rise
Champ on-the-rise
merci pour ton aide, je vais changer mon workflow et je vais tester
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.