Process / GEL Workbook and Reference
In this session we will look at how linear Clarity processes are created, and how they are broken down into logical steps comprising single or multiple actions.
You can download this programme as a PDF here.
Clarity processes can be generic or based on an object. Those based on objects can be configured to launch automatically on a given event, or be run on demand, or both. Clarity also has facilities to schedule a process so it executes at regular intervals.
The event can be an object instance creation or an update, and the circumstances under which the process launches can be specified using conditions. For example a process based on the task object might launch when the task’s status changes from ‘Not Started’ to ‘In Progress’, or it might only launch for tasks in a particular partition. An object’s custom attributes are automatically included in the drop downs when the conditions are being created.
It is sometimes convenient to include multiple objects in a process. For example we might base a process on the task object but need to make changes to the associated project. We can do this by linking in additional objects and these will be pulled in as required in the remainder of the process.
Processes consist of steps, and two steps, Start and Finish, are always included automatically. A lot of the time these are the only steps that are needed and all that is required is to link the two together to create the process flow.
If the processing is too complex for a single step, or the processing has a natural split that lends itself to being divided up into several smaller steps, then new steps can be created and chained together.
A step consists of single or multiple actions and, there are five action types:
- Manual Actions
- System Actions
- Run a job
- Execute a custom script
- Execute a sub-process
Manual actions comprise things like sending notifications and are available for all types of process.
System actions are only applicable to processes built on a Clarity object, but note that some objects (for example the Team and Assignment objects) are not event-enabled.
Jobs can be executed as a step action. Later on we will see how to run a complete process as a job, which allows it to be scheduled.
GEL scripts will be seen in sessions 3 and 4. They allow custom logic to be programmed. A process can also execute other processes, synchronously or asynchronously.
Worked Example 1.1
Create a generic process that sends a timesheet reminder notification to a user every day.
Worked Example 1.2
Create an event based process on the project object that locks all fields except the active/inactive flag when the project is made inactive.
Create a process that sets the ETC of a task to zero and sends a notification to the project manager when a task is completed.