Service Studio 5.1 Help
A Process is an element that allows you to integrate your business processes into your applications. A process is designed in a process flow, which usually represents the activities that have to be carried out during an entity life cycle.
How to create a Process:
A process can have input parameters and output parameters.
Creating a Process Flow
Use a specific editor to design the behavior of your process, i.e., design the process flow (Collection of elements that graphically implement the behavior of a process. You can have flow control elements (Start, Decision, ..., End) and you can invoke other processes. Elements in an process flow are linked through Connectors.). In this editor, you can select any tool available in the Tools tree to be executed in the process flow of your process. How?
When editing expressions in your process flow, you have access to the following elements in the scope:
Input and Output parameters defined in the process.
Output parameters of process activities in the process flow. Take note that, to use a process activity output parameter, that process activity must precede in all the process flow paths the process activity where you want to use the output parameters. For example, to use the output parameters of an Automatic Activity in a Decision element, the Automatic Activity element must precede the Decision element in all paths to the Decision element in the process flow. Learn more about output parameters in a process flow.
Anyway, when you're editing your process flow, all of the process activities available in the scope are present in the Scope tree of the Expression Editor, in a case where you're editing an expression, or in the variables tree of the Select Variable window, in a case where you're trying to use a variable.
Launching a Process
In your application, a process may be either automatically launched when an entity is created, or explicitly launched in an action flow (Collection of elements that graphically implement the behavior of an action. You can have flow control elements (If, For Each, ..., End) and you can invoke other actions. Elements in an action flow are linked through Connectors.) of your actions. In the first case, simply set the Launch On process property with the appropriate entity action.
When a process is automatically launched as result of an entity action, an input parameter with the entity identifier is automatically added to the process so that you know which entity launched that process.
To explicitly launch the process in your application use the process extended actions.
A process can also be executed in another process flow. How?
Using Process References
Service Studio provides you with mechanisms to reuse Processes among eSpaces. You can expose your Processes to other eSpaces or use Processes defined in another eSpace.
If you are using an Oracle database, commit the transaction before launching a Process instance. See more about Database Compatibility Issues.
When a process is launched a process instance is created and executed starting at the Start element of its flow. The process flow is then followed and each process activity found in the path has an activity instance created and executed.
If you have a cycle in your process flow, each time the same process activity is found a new instance of it is created and executed.
You may add business logic to validate your process instance execution, for example, when the process is launched, to validate whether the process instance can be executed. Learn more about Process Callback Actions.
Process Activities Life Cycle
Each activity instance has its own life cycle with several states followed from the beginning to the end of the execution. To enforce your activity execution consistency, you may add business logic at some points of the activity life cycle. Learn more about Process Activities Life Cycle and Process Activities Callback Actions.
Upgrading Your Process
To upgrade your process flow, simply edit the process flow and publish your eSpace. Agile Platform automatically performs the process flow upgrade for all executing process instances. Learn more about upgrading processes.
Using Process Entities
You may set a process to have a Process Entity associated with it. This allows you to persist process information and use it in your application logic. Learn more About Process Entities.
Using the Processes API
To customize and extend the design of your Processes, you can use the Processes API which allows extracting information from the Platform data model. See more About the Processes API.
Design Processes | Process Flow Editor | Process Callback Actions | Process Activities Life Cycle | Process Activities Callback Actions | Expose a Process | Use a Process Reference | Upgrading Processes | About Process Entities | About the Processes API | Process Properties