11-11-2010 07:06 AM
<swimlane name="approvers">
<assignment class="org.alfresco.repo.workflow.jbpm.AlfrescoAssignment">
<pooledactors>#{people.getGroup('GROUP_ProjectManager')}
</pooledactors>
</assignment>
</swimlane>
<task-node name="Validazione">
<event type="node-enter">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<runas>admin</runas>
<script>
for (var i = 0; i < bpm_package.children.length; i++)
{
bpm_package.children[i].properties["wfpm:status"] = "Verificato";
bpm_package.children[i].save();
}
</script>
</action>
</event>
<event type="node-leave">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<runas>admin</runas>
<script>
for (var i = 0; i < bpm_package.children.length; i++)
{
if (!bpm_package.children[i].hasAspect("wfpm:utente"))
{
bpm_package.children[i].addAspect("wfpm:utente");
}
}
</script>
</action>
</event>
<transition to="Rifiutato" name="Rifiuta"></transition>
<transition to="Validato" name="Valida"></transition>
<task name="wfpm:validazioneTask" swimlane="approvers" />
</task-node>
<task-node name="Validato">
<event type="node-enter">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<runas>admin</runas>
<script>
//first proof
//var utente=people.getPerson(people.getGroup('GROUP_ProjectManager'))).properties.userName;
//second proof
var utente=people.getPerson(approvers).properties.userName;
for (var i = 0; i < bpm_package.children.length; i++)
{
bpm_package.children[i].properties["wfpm:utente"] = utente;
bpm_package.children[i].properties["wfpm:status"] = "Validato";
bpm_package.children[i].save();
}
</script>
</action>
</event>
<task name="wfpm:ValidatoTask" swimlane="initiator" />
<transition to="End" name="termina"></transition>
</task-node>
During the validation task, when I click , the button "Valida"11-13-2010 12:29 PM
11-17-2010 05:07 AM
<task-node name="Validazione" >
<task name="wfpm:validazioneTask" swimlane="approvers" >
<event type="task-end">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<script>
<variable name="bpm_assignee" access="write"/>
<expression>
if (taskInstance.actorId != null)
people.getPerson(taskInstance.actorId);
else
person;
</expression>
</script>
</action>
</event>
</task>
<event type="node-enter">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<runas>admin</runas>
<script>
for (var i = 0; i < bpm_package.children.length; i++)
{
bpm_package.children[i].properties["wfpm:status"] = "Verificato";
bpm_package.children[i].save();
}
</script>
</action>
</event>
<transition to="Rifiutato" name="Rifiuta"></transition>
<transition to="Validato" name="Valida">
<action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript">
<runas>admin</runas>
<script>
for (var i = 0; i < bpm_package.children.length; i++)
{
var nome= bpm_assignee.properties["cm:firstName"];
var cognome= bpm_assignee.properties["cm:lastName"];
var utente= nome + ' ' + cognome;
bpm_package.children[i].properties["wfpm:utente"] = utente;
bpm_package.children[i].save();
}
</script>
</action></transition>
</task-node>
I think the main point where was wrong was that I wanted to call the variable in the node-enter, but now declaring the variable bmp_assignee in the task-end event, and taking one of its properties during the transition, (not in the next task-node ), I finally get what I needed11-17-2010 08:56 AM
11-23-2010 04:15 AM
11-23-2010 05:59 AM
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.