Filter processing in BMC Remedy AR System server
The BMC Remedy AR System server processes filters in an execution order you specify. As the BMC Remedy AR System server considers actions in each filter, it categorizes those actions into one of three phases. (See Filter phases.) In general, actions are carried out such that database operations are deferred until after all actions that modify the database have been performed. At that point, a single database transaction is opened and all the database operations are performed. This keeps transaction time and table and row locks in the database to a minimum.
Some complex applications, however, require database operations to be performed immediately. For example, an application might be used as a subsystem of another application, where the results of the subsystem's work are needed immediately by the calling application. For more information, see Overriding filter processing phasing.
You can combine the Filter, SQL, and API logs to "see" how BMC Remedy AR System interacts with the database and how the different phases interact with each other, especially if you are creating complicated workflow. For more information, see Server logging modes.
Diagrammatic representation of filter processing in AR System server
The following figure illustrates how BMC Remedy AR System server processes filters.
Filter execution order
Execution order determines the order in which filters are executed. When you create a filter, you assign it an execution order value. If one filter has a lower execution order than another, the actions for the first filter are executed or queued before the actions for the second one.
When filters have the same execution order, you cannot determine which order the filters will run. The order may change over time. If you require a specific sequencing for filters, use different order numbers.
Refer to the following table for more information about working with filters:
|To understand the example of how filter processing works||Use case scenario for filter processing|