Try OpenEdge Now
skip to main content
User's Guide
Defining and assigning performers : Defining performers : Defining a subprocess performer

Defining a subprocess performer

A Subprocess is a process template that can be included into another process template by using a subprocess workstep. In this case, the performer of the subprocess workstep is the subprocess itself.
You can define a subprocess in a local or remote server as a subprocess performer in your process template without exiting Business Process Modeler by performing the following steps.
1. From the Performers tab, click Add.
2. From the first page of the New Performer wizard, select the Sub-Process type of performer, then click Next.
3. Enter a name for the subprocess in the Enter a name box.
4. You can use an alias to appear as the subprocess instance name in Business Process Portal instead of the lengthy subprocess name that appears by default. In the Enter an alias box (available only for Process Model), enter the alias name. Alternatively, you can use a CHARACTER dataslot as the alias. Type '@' in the Enter a name box to display the list of CHARACTER dataslots in the process. Select the dataslot to be used as the alias. When you use an alias, the subprocess name is in a format (<alias>#<sub-piid>) that controls the length of the subprocess name.
Note: To use aliases in multiple subprocesses, the Sub-Process box should contain a mapped dataslot for multiple processes and the Alias box must use dataslots of LIST type. In this way, each index can specify the alias for the respective subprocess. For more information, see “Subprocess Alias” in Chapter 16 of the BP Server Developer’s Guide, or the “Subprocess Alias” example in BM_Home\BP Server\examples.
5. In the Select a process box, enter a valid name for the process you want to use as a subprocess. Alternatively, you can select one of the following options:
*Assign a dataslot as a dynamic performer of the subprocess. Type '@' in the Select a process box to display the LIST of CHARACTER dataslots in the process. Select the dataslot to be used as the subprocess performer.
*Click Browse to select a specific process template file to be assigned as a static subprocess performer.
Placing an existing process template in the subprocess box converts that process template to a subprocess.
6. Use the Enter a server URL box (available only for process models) to connect to a remote server (provided your Business Process Server administrator has already set up this connection). Enter a valid path to the external server using the following format: jndi://$RemoteMachine><jndiName>. Alternatively, type '@' in the Enter a server URL box to assign a CHARACTER dataslot as the dynamic performer on the remote server.
7. Select the Indexed checkbox (available only for process models) if you want to pass data from a LIST dataslot in a parent process to multiple subprocesses, with each subprocess containing a Primitive dataslot that asynchronously receives specific information from, and sends specific information back to, the LIST dataslot. You can map dataslots in the parent process to dataslots in each subprocess; or, if the dataslot name in each subprocess matches the dataslot name in the parent process, then no mapping is necessary.
This Indexed feature ensures that dataslot values in a subprocess are not overwritten, and that the correct value from a INTEGER dataslot is returned to its specific slot in the LIST dataslot.
If you are using a LIST dataslot as the subprocess performer and the Indexed check box is not selected, then each subprocess that is completed and submits data to the parent process may overwrite data from subprocesses that were completed earlier. Therefore, use a non-Indexed subprocess only when no data is to be returned or when overwriting of data does not matter. For more information about using a LIST dataslot to invoke multiple subprocesses, see Chapter 4, “Using a LIST Dataslot to Invoke Multiple Subprocesses” in the Application Developer’s Guide.
8. Click Next. In the Description page, enter a brief description of the subprocess.
9. Click Finish to create a subprocess performer and add it to the Performers tab.
Note: To modify the subprocess performer details, select the subprocess performer and make your changes in the Sub-Process and Description sections of the Performers tab.