Try OpenEdge Now
skip to main content
Developing BPM Applications with Developer Studio
Defining and assigning performers : Defining performers : Defining a subprocess as a performer
 

Defining a subprocess as a 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 Progress Developer Studio for OpenEdge by performing the following steps:
1. From the Performers tab, click Add.
The New Performer wizard appears.
2. Select the Sub-Process type of performer, and then click Next.
3. Enter a name for the subprocess in the Enter a name box.
4. In the Enter an alias box (available only for Business Process), enter the alias name.
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. 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 subprocess 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.
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 BPM processes) to connect to a remote server (provided your Business Process Server Administrator has already set up this connection. For more information, see the Configuring remote server properties in the oebpsjndi.properties file section in the BP Server developer's Guide). 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 check box (available only for Business Processes) 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, each subprocess that is completed and submits data to the parent process may overwrite data from subprocesses that were completed earlier. 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.