03-30-2015 11:07 PM
<!– message that asking for transition –>
<message id="transitionMsg" name="transitionMsg"></message>
<process id="rejectionTest" isExecutable="true">
<!– start event –>
<startEvent id="sid-3CB181D7-6454-4191-8C64-6913830F0080"></startEvent>
<!– fill the form –>
<userTask id="formDocumentation" name="Form documentation"></userTask>
<!– sub process for manager approval –>
<subProcess id="subProcess" name="subProcess">
<startEvent id="sid-F8C6AEE8-38BD-4756-97B4-B3F41D1C9888"></startEvent>
<userTask id="managerApproval" name="Manager approval"></userTask>
<endEvent id="sid-BD446E60-3C91-4F92-88DB-FC52B65CF0C0"></endEvent>
<sequenceFlow id="sid-4D793033-8D63-4719-B21F-B749E86ED395"
sourceRef="sid-F8C6AEE8-38BD-4756-97B4-B3F41D1C9888" targetRef="managerApproval"></sequenceFlow>
<sequenceFlow id="sid-1305E9CA-3531-49AC-9AB3-6369FD898CE3"
sourceRef="managerApproval" targetRef="sid-BD446E60-3C91-4F92-88DB-FC52B65CF0C0"></sequenceFlow>
</subProcess>
<endEvent id="sid-36FFF592-1898-4D99-8697-29B61CBA76EF"></endEvent>
<!– boundary event –>
<boundaryEvent id="sid-F1583981-7F79-4242-B396-9FAE066D8B56"
attachedToRef="subProcess" cancelActivity="true">
<messageEventDefinition messageRef="transitionMsg"></messageEventDefinition>
</boundaryEvent>
<!– transition handler –>
<serviceTask id="sid-BDD36229-21A6-4D6A-A639-58EDADC29D4C"
activiti:delegateExpression="${transitionHandleTask}"></serviceTask>
<endEvent id="sid-A5BEB0D2-B629-4333-AE47-32AB08817F86"></endEvent>
<sequenceFlow id="sid-1CF9CD35-52CB-457C-97C1-0BC8393D391C"
sourceRef="subProcess" targetRef="sid-36FFF592-1898-4D99-8697-29B61CBA76EF"></sequenceFlow>
<sequenceFlow id="sid-71B6C7DC-52B7-4553-84B0-470CD0319562"
sourceRef="sid-3CB181D7-6454-4191-8C64-6913830F0080" targetRef="formDocumentation"></sequenceFlow>
<sequenceFlow id="sid-D6C9CE38-D763-4BEC-8EB0-22862957235D"
sourceRef="formDocumentation" targetRef="subProcess"></sequenceFlow>
<sequenceFlow id="sid-BBFCA741-55EC-4BB1-BAE9-12131512CC3F"
sourceRef="sid-F1583981-7F79-4242-B396-9FAE066D8B56" targetRef="sid-BDD36229-21A6-4D6A-A639-58EDADC29D4C"></sequenceFlow>
<sequenceFlow id="sid-EDEC210F-7292-4BA3-ACD8-15238DC4A7C9"
sourceRef="sid-BDD36229-21A6-4D6A-A639-58EDADC29D4C" targetRef="sid-A5BEB0D2-B629-4333-AE47-32AB08817F86"></sequenceFlow>
</process>
/**
* handle Task Jump
*
* @param execution
*/
private void handleJump(ActivityExecution execution) {
String activityId = execution.getVariable("toActivity_").toString();
String processDefinitionId = execution.getProcessDefinitionId();
ProcessDefinitionImpl pd = (ProcessDefinitionImpl) repositoryService
.createProcessDefinitionQuery()
.processDefinitionId(processDefinitionId).singleResult();
// the destination activity
ActivityImpl pointActivity = pd.findActivity(activityId);
// the current activity
ActivityImpl currActivity = (ActivityImpl) execution.getActivity();
// build a temporary outgoing transition for current activity
PvmTransition tempTransition = (currActivity)
.createOutgoingTransition();
((TransitionImpl) tempTransition).setDestination(pointActivity);
// take the transition
execution.take(tempTransition);
// remove the temporary transition
pointActivity.getIncomingTransitions().remove(tempTransition);
currActivity.getOutgoingTransitions().remove(tempTransition);
}
03-31-2015 05:19 AM
03-31-2015 06:35 AM
03-31-2015 06:57 AM
04-07-2015 08:17 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.