Dear, it is difficult for me to be able to model a process of the type father and son or master detail with the use of the call to the Activity.
So far I have only modeled a single process in a simple way. I have not even needed to send messages, which I’m sure I’m wasting a lot of power.
I have deployed the Procurement requests example process but it It has good things but it is useful as a starter.
My need is the following:
I initiate an application process with a list of purchase items. When it passes to the Chief to approve there should be so many independent instantiated Sub-processes with the same Parent Process so that each process continues with a task of approving the item.
Then all the Subprocesses would go through their different states until they finish and conclude the Father process.
Is this possible after the instantiation of the Father Process to make a “Call to activity” with iterator (multi-instantiation parallel) for each item?
How should I design with the BDM where the BDM contains 2 tables, Request and item Purchase?
Each subprocess will be attended independently.
I already appreciate the help that will be extremely important to me.
Yes this is totally doable and you are in the good direction: you should use a multi-instantiated call activity using “parallel multi-instantiation”. You can the items list to dynamically create one child process instance per item and pass the item to the child process instance.
May you please clarify: "You can (???) the items list to dynamically create one child process instance per item and pass the item to the child process instance."
In my case I create the item list in the initiation form, but when I go to the call activity iteration tab I have no variable of type list to select and so nothing to iterate from...
So user is creating his list of item during the initiation, with the initiation form. Then the initiation is directly linked to the call activity task.
How to create/specify the list variable to call, if I just want to call a subprocess for each item of the list?
If I understand correctly both your parent and child processes need to read/update the same unique business variable. In order to do so you will need to declare the variable in both parent and child processes. Variables need to have the same type but can have a different name (e.g. parent and child).
The default value of the variable in the child process must be empty (assuming you set the initial value of the variable in the parent process before calling the child process).
Configure the call activity, in the “Execution”, “Data to send” tab. You can click on the “Add” button and in the select list on the left hand side select the variable in the parent process, in the select list on the right hand side select the variable in the child process and in the select list in the middle choose “Assigned to Data”.
This setting will not duplicate the business variable declared and initialized in the parent in the child process but rather initialize the child process variable to target the existing data.
May you please clarify: "You can (???) the items list to dynamically create one child process instance per item and pass the item to the child process instance."
In my case I create the item list in the initiation form, but when I go to the call activity iteration tab I have no variable of type list to select and so nothing to iterate from...
So user is creating his list of item during the initiation, with the initiation form. Then the initiation is directly linked to the call activity task.
How to create/specify the list variable to call, if I just want to call a subprocess for each item of the list?
Bonitasoft empowers development teams with Bonita, the open-source and extensible platform to solve the most demanding process automation use cases. The Bonita platform accelerates delivery of complex applications with clear separation between capabilities for visual programming and for coding. Bonita integrates with existing solutions, orchestrates heterogeneous systems, and provides deep visibility into processes across the organization.