[jboss-user] [jBPM Users] - Conditional Task Assignment with Fork
pradeep.gulla
do-not-reply at jboss.com
Sun Oct 25 10:00:05 EDT 2009
Is it possible to assign conditional tasks with Fork node in JBPM.
As per my requirement, workflow should allow optional Parallel tasks and a mandatory sequential task.
But I'm getting some issues while conditionally assign tasks with fork.
Process definition:
| <?xml version="1.0" encoding="UTF-8"?>
| <process name="conditional_task" version="1" xmlns="http://jbpm.org/4.0/jpdl">
| <start g="27,32,80,40">
| <transition to="Validate Approval Seqence"/>
| </start>
| <!-- Checks which sequence to initiate ie., Either Parallel or Sequential -->
| <decision expr="#{isOptionalTasksExists}" name="Validate Approval Seqence" g="257,31,80,40">
| <transition name="true" to="Assign Parallel Tasks" g="-24,2"/>
| <transition name="false" to="Sequential Task" g="564,54:-75,-21"/>
| </decision>
| <!-- Parallel Task Assignment -->
| <fork name="Assign Parallel Tasks" g="258,139,80,40">
| <transition to="validateFirstParallelTask"/>
| <transition to="validateSecondParallelTask"/>
| </fork>
| <!-- Conditional Task Assignment -->
| <decision name="validateFirstParallelTask" g="135,221,80,40">
| <transition to="First Parallel Task">
| <condition expr="#{firstParallelApprover != null}"/>
| </transition>
| </decision>
| <task assignee="#{firstParallelApprover}" name="First Parallel Task" g="71,325,169,40">
| <transition name="Approve" to="wait for other tasks" g="-45,-18"/>
| </task>
| <decision name="validateSecondParallelTask" g="384,221,80,40">
| <transition to="Second Parallel Task">
| <condition expr="#{secondParallelApprover != null}"/>
| </transition>
| </decision>
| <task assignee="#{secondParallelApprover}" name="Second Parallel Task" g="308,324,204,40">
| <transition name="Approve" to="wait for other tasks" g="-45,-18"/>
| </task>
| <join name="wait for other tasks" g="270,436,80,40">
| <transition to="Sequential Task"/>
| </join>
| <!-- Sequential Task -->
| <task assignee="#{sequentialApprover}" name="Sequential Task" g="494,437,147,40">
| <transition name="Approve" to="Finish" g="-45,-18"/>
| </task>
| <end name="Finish" state="Completed" g="778,431,80,40"/>
| </process>
This definition forces me to supply either (2 Parallel and 1 Sequential) or (0 Parallel and 1 Sequential) approvers, but not 1 Parallel and 1 Sequential.
Thanks in Advance
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4262014#4262014
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4262014
More information about the jboss-user
mailing list