AnsweredAssumed Answered

ForEachFork recuperation de donnees [solved]

Question asked by deedlith on Jan 19, 2011
Latest reply on Jan 24, 2011 by deedlith
Bonjour a tous,

je me suis entrainée sur plusieurs petits workflow et maintenant j'aimerais déployer un cas concret mais ca coince sur le ForEachFork, il s'agit pour une liste de personne de donner son avis sur une postulation … :

    <node name="forkProf">
        <action class="org.alfresco.repo.workflow.jbpm.ForEachFork">
            <foreach>#{bpm_assignees}</foreach>
            <var>reviewer</var>
        </action>
        <transition to="profsEval"></transition>
    </node>

    <task-node name="profsEval">
        <task name="asm:evaluationPostulation">
            <timer name="delai" duedate="12 hours" transition="reject"></timer>
            <assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
                <actor>#{reviewer}</actor>
            </assignment>
        </task>
        <transition name="reject" to="endFork">
            <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
                <script>
                    var doc = companyhome.childByNamePath("Sites/studentPostulation/documentLibrary/Application/"+bpm_workflowDescription+"/infoFromProf.txt");

                    if(logger.isDebugEnabled())
                        logger.debug("try to reject the candidat");

                    if(doc != null){
                        var workingCopy = doc.checkout();
                        workingCopy.content += "Professeur : " + taskInstance.actorId + "\t\n";
                        workingCopy.content += "Note d'evaluation : " + asm_evaluation + "\t\n";
                        workingCopy.content += "Periode eventuelle : " + asm_periode + "\t\n";
                        workingCopy.content += "Commentaire : " + taskInstance.comments.get(0).message + "\t\n\n";

                        workingCopy.checkin();
                    }
                </script>
            </action>
        </transition>
        <transition name="approve" to="endFork">
            <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
                <script>
                    var doc = companyhome.childByNamePath("Sites/studentPostulation/documentLibrary/Application/"+bpm_workflowDescription+"/infoFromProf.txt");

                    if(doc != null){
                        var workingCopy = doc.checkout();
                        workingCopy.content += "Professeur : " + taskInstance.actorId + "\t\n";
                        workingCopy.content += "Commentaire : " + taskInstance.comments.get(0).message + "\t\n\n";

                        workingCopy.checkin();
                    }
                </script>
            </action></transition>
    </task-node>

    <join name="endFork">
        <transition to="deanDecision2"/>
    </join>

j'essaie de récupérer les valeurs des champs pour les écrire dans un fichier … je n'ai pas trouve de meilleur façon de faire
ces champs sont defini dans le taskModel de mon workflow

      <type name="asm:evaluationPostulation">
         <title>Evaluation de la candidature</title>
         <parent>bpm:workflowTask</parent>

         <properties>
            <property name="asm:evaluation">
               <type>d:int</type>
            </property>
            <property name="asm:periode">
               <type>d:text</type>
            </property>
         </properties>

         <overrides>
            <property name="bpm:packageItemActionGroup">
               <default>read_package_item_actions</default>
            </property>

            <property name="bpm:reassignable">
               <default>false</default>
            </property>
         </overrides>
      </type>

Tout idee me ferait du bien, je tourne en rond depuis plusieurs jours et ne trouve pas grand chose sur le ForEachFork et la recuperation de donnees. Je precise que j'ai fait comme ca dans d'autres workflow sans fork et que j'arrive a recuperer les donnees.

Merci d'avance pour votre aide.

Outcomes