Griser un bouton transaction

cancel
Showing results for 
Search instead for 
Did you mean: 
slipknotik
Active Member

Griser un bouton transaction

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
jayjayecl
Active Member II

Re: Griser un bouton transaction

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
Active Member

Re: Griser un bouton transaction

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
Active Member II

Re: Griser un bouton transaction

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
Active Member

Re: Griser un bouton transaction

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
Active Member II

Re: Griser un bouton transaction

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
Active Member

Re: Griser un bouton transaction

merci pour ton aide, je vais changer mon workflow et je vais tester