Working with Event Processing Details
This topic describes how to use the options on the Event Processing Details dialog box in the Business Rules Framework.
To access the Event Processing Details dialog box:
- Open an event in the Business Rules Framework.
- Click the Event Processing Details link.
Selecting the Run Type
Application-triggered business rules can run either synchronously or asynchronously. How a business rule runs is determined by the Run Type value set for an event on the Event Processing Details dialog box.
You can improve the performance of data-intensive and longer-running event processes by offloading them to be run through Enterprise Scheduler Service (ESS) to run asynchronously. With ESS handling the Business Rules Framework processing, the application transaction sending the request to the Business Rules Framework can continue with its typical process flow without waiting for the processing to be completed by the Business Rules Framework. This can reduce the lag time for agency users and end users as they aren't waiting for the system response.
The following table describes the behavior of the event run types.
Run Type |
Behavior |
---|---|
Synchronous |
|
ESS Immediate (asynchronous) |
|
These event types don't support ESS immediate (asynchronous) processing:
-
Pre-save and pre-submit events, such as Before Permit Inspection Saved, Before Permit Application Submitted, Before Business License Inspection Saved, and so on.
-
Scheduled rule events.
While an ESS immediate (asynchronous) event is processing, the log file will display a status of "unprocessed" and indicate that ESS will run the job soon. When the job completes the log file will display the typical results of success, fail, and so on.
Enabling an Event
Whether you have a business rule defined for a business rule event or not, if the event is enabled, when the conditions arise for that business rule event to run, it will run. By default, all business rule events are enabled. You can choose to disable an event if you know you aren't using it and you want to reduce any possible overhead associated with that event running.