Status Transition Criteria
Introduction
There can only be one Current Status at a time. However, the process of switching from one status to another can be automated. This is done by creating a Schedule Job in the system and then adding Status Transition Criteria to the Event Statuses.
Required System Configuration
A Schedule Job (EventStatusTransitionScheduler) will need to be scheduled that will automatically transition the Event Statuses that are configured in Event Builder. This will only need to be done once in your system, until the end date of the scheduled job has past. Once the End Date of the Schedule Item has past then a new Schedule Job will need to be created.Understanding Status Transitioning
The Scheduled Job, EventStatusTransitionScheduler is recommended to be scheduled to run each night. What this schedule job does is check to see if any current event statuses have Enable Transition for Status checked.
Enable Transition for Status checked on the Planned Status
Important
If the current status does not have the Enable Transition for Status checkbox checked then the transition WILL NOT automatically transition, even if other statuses in the event have the Enable Transition for Status checked. This schedule job will only look at the current status and only if Enable Transition is checked will it look to the other statuses for a criteria statement that evaluates as True.
If a current status has the Enable Transition for Status checked, then it will look at the other statuses in that event in sequential order to verify if any criteria listed in the Status Transition Criteria field is True.
Status Transition Criteria on the Active Status
Sequential order is defined by the order in which the Statuses are listed in the Event. By default, the order is Planned, Active, and Closed. Status transition will ONLY move FORWARD in order that they are listed. It cannot look back to previous statuses and will not validate the criteria listed on the current status or older statuses.
Sequential Order of Statuses in Event Builder
As it looks sequentially down the list of statuses, if one of the statuses has criteria that evaluates to True, then the Event will transition to that status. For example, if the criteria listed in the Active status (which is next in line after Planned) is True then the event is moved from the Planned status to the Active status.
Note
If you have the same criteria in both Active and Closed, for example it will still only move the Active status as it is next in line sequentially. Although, it would not be typical to use the same criteria for both Active and Closed statuses.
Additional Information
The Transitioning of a Status will only move forward sequentially down the list of statuses in an event. For example, it will not move back to the Planned status even if the criteria is True. It also does NOT look at the criteria on the current status. The criteria entered is only used to identified which status the event should transition to next and will only do so if the SOQL Statement entered into the Status Transition Criteria field is True. Best practice if you want to use Status Transition Criteria is to check the Enable Transition for Status on each status in your event and to verify or add criteria that will be True in order to move to that status from the previous status listed. The following example shows how the status transition will work in a real life example.How to Enable Status Transitioning
From the Statuses section, click the pencil icon next to the status you'd like to enable transitioning for.
- In the Edit Event Status window, check Enable Transition for Status.
- Click Transition Criteria to open a Create Filter window to create a transition criteria filter. See the section below on How to Define Status Transition Criteria for more information.
- Alternatively, check Advanced to enter a SOQL Statement that will evaluate as True when you want your status to transition to this status.
- Enter to fill out the Filter Condition, Field, Operator, and Value fields in the Create Filter window.
- Click Save to navigate back to the Edit Event Status window. Click Save & Close to complete.
Repeat these steps for all other statuses in the Event that you want to be able to transition to.
Note
A status can have just the Status Transition Criteria field populated but not the Enable Transition for Status checked, however this means that once the Event has been transitioned to that status it will no long automatically transition the status in the future. This is because the Enable Status for Status checkbox must be checked in order for the system to initiate the status transition process.
How to Define Status Transition Criteria
In order for statuses in an Event to transition automatically, both the Enable Transition for Status checkbox must be checked and a valid SOQL statement must be entered into Status Transition Criteria field or window. When both of these requirements are met then when the EventStatusTransitionScheduler Schedule job runs and the system will transition your event status automatically, if criteria listed on the event statuses are valid (meaning True). Creating valid SOQL Statements for your Status Transition Criteria field is crucial for this feature to function as desired.
Status Transition Criteria must be a valid SOQL where the user indicates
The API field name of a field on the Event record
A Comparison Operator
A valid entry for the API field
For example, if a staff user wanted to create a Status Transition Criteria to indicate the switch from PLANNED status to ACTIVE based on the Ticket Sales Start Date, they would use:
- The API field name of a field on the Event record:
- EventApi__Ticket_Sales_Start_Date__c
- A Comparison Operator:
- >= (Greater than or equal to)
- A valid entry for the API field:
- TODAY
To build the full Status Transition Criteria you add the above three steps together: EventApi__Ticket_Sales_Start_Date__c >= TODAY
Note
Click the link for a full list of Comparison Operators and other Salesforce SOQL syntax information.