Overriding default SIF Agent Queries
There are times that the default queries in the SIF Agent need to be adjusted for a districts specific needs. There are 6 queries that can be overridden relating to 4 SIF objects: StudentPersonal, StudentSchoolEnrollment, StaffPersonal and StaffAssignment.
Be aware that these queries are used for both Requests and Events. If a query is improperly written, then it will cause errors within the agent and can prevent Events or Requests from working correctly. The Base Table Alias for each object will need to be in the query for conditional requests and events to work correctly.
If a query is overridden or an overridden query is changed, the SIF Agent must be restarted to load the changes.
In general, it is not recommended to override the queries in the SIF Agent. These queries can be complex and changing too many things can give unexpected results. If there is a need to override the query, it is best to use the templets provided and make the changes that are necessary for your requirements.
To override one of the queries, a text file with the necessary SQL statement will need to be created and then placed into a folder called “queries” in the root of the SIF Agent install folder. The names of these files are given below for each object.
The default queries of the agent are provided on PowerSource and can be used as a base template. It is recommended that you take the template file provided and place it into the “queries” folder and then modify the file from there.
There are a handful of options that can be entered in each object to customize the query for the agent settings. These are listed below with their description.
For Student and Staff Personal queries, there are two queries for each. The first one is the main query to obtain most data and is typically going to be the query that needs to be overridden. The second one is the query to retrieve the race codes. This is used when the Federal Race and Ethnicity is enabled. If there is no need to change the race code query, then this file does not need to exist in the “queries” folder.