// Create the list we will pass to the enactment service.
final List enactmentStructs = new ArrayList();
final TaskCreateDetails taskCreateDetails =
new TaskCreateDetails();
taskCreateDetails.subject = "The subject of a Task";
taskCreateDetails.reservedBy = "someUser";
enactmentStructs.add(taskCreateDetailsStruct);
// An aggregated struct.
GroupMemberDetails groupMemberDetails
= new GroupMemberDetails();
groupMemberDetails.dtls.memberName = "Test User";
enactmentStructs.add(groupMemberDetails);
// A list struct.
ChildDetailsList childDetailsList
= new ChildDetailsList();
ChildDetails recordOne = new ChildDetails();
recordOne.identifier = 1;
childDetailsList.dtls.add(recordOne);
ChildDetails recordTwo = new ChildDetails();
recordTwo.identifier = 2;
childDetailsList.dtls.add(recordTwo);
enactmentStructs.add(childDetailsList);
EnactmentService.startProcess(
"TASKCREATEWORKFLOW", enactmentStructs);
- The EnactmentService API is provided to allow for the enacting of workflow processes from application code. The list of Cúram structs provided to the startProcess() method must be sufficient to fully populate the enactment mappings of the associated process. Note that enacting a process in this way is asynchronous and the process will get kicked off once the current application transaction completes.
- The startProcessInV3CompatibilityMode method is provided for the use of the core application Task API only. Direct use of this method in custom code is not supported and may hamper future upgrades.