Siebel Field Service Guide > Scheduling Using Siebel Scheduler >
About Running Contract Scheduling
Contract Scheduling is a feature of the Optimizer for rapid scheduling of service appointments while maintaining the critical Optimizer requirements: enforcement of contractual deadlines and use of constraints when searching for solutions.
When Contract Scheduling is called, the Optimizer does not unschedule any other activities. However, the Optimizer attempts to create available time before inserting an activity. For example, if there are 2 half-hour spaces in an employee schedule, and a user wants to schedule a 45-minute appointment, then the Optimizer attempts to move the other appointments to create a contiguous 45-minute space for the appointment.
The Optimizer is multithreaded and can handle multiple requests at the same time. For example, 2 users can call Contract Scheduling at the same time. However, because the Optimizer can process only 1 request at a time, simultaneous requests are queued so that multiple users can submit requests to the Optimizer. While the Optimizer performs optimization, users can still submit requests. The Optimizer queues the requests and processes them at the level for the Optimizer - Save Interval parameter or when optimization completes.
Companies with the following business requirements can use Contract Scheduling:
- Same-day calls for repair activities are a higher percentage of service calls.
- Service agreements specify penalties for failing to meet response times (for example, free labor or free parts).
- A large number of constraints exist.
Users can run Contract Scheduling by clicking the following buttons in Siebel Field Service:
- Insert Activity button in the Unscheduled Activities view of the Dispatch Board screen. Clicking this button sends a request to either the ABS or the Optimizer to schedule an appointment or insert the selected activity into the optimized schedule, depending on times relative to the horizons. For more information, see Insert Activity Button.
- Contract Schedule button in the Schedule view in the Activity List view of the Activities screen. Clicking this button sends a request for scheduling the selected activity. For more information, see Contract Schedule Button.
- Load button in the Activities view in the Service Regions view of the Administration - Scheduling screen. This button is similar to the Insert Activity button in the Dispatch Board screen. For more information, see Load Button.
Insert Activity Button
The Insert Activity button either obtains a confirmed appointment from the ABS or runs the Optimizer to schedule the selected activity. The Insert Activity button is similar to the Contract Schedule button in the Schedule view in the Activity List view of the Activities screen.
Before clicking this button, make sure the following conditions apply:
- The service region is set in the Dispatch Board Gantt chart.
- The activity is not repeating.
- If the Lock Schedule check box is selected, then the values in the Planned Start field and Planned End field are not null.
- If the Lock Assignment check box is selected, then the activity assignee is not null.
The choice of sending the Insert Activity request to the ABS or Optimizer depends on the values in the Earliest Start field and the Latest Start field. These values determine whether the activity is in the ABS or the Optimizer horizon, as follows:
- If the Latest Start field is null, then sends the request to the ABS.
- If the Latest Start field is in the Glued period, then does not insert the activity and returns an error message.
- If the Latest Start field is less than the ABS start, then sends the request to the Optimizer.
Contract Schedule Button
The Contract Schedule button functions like the Insert Activity button. For more information, see Insert Activity Button.
The Load button for activities synchronizes data in the cache if there are manual changes to an activity. For more information, see Loading Activity Data for Service Regions.
The choice of sending the activity to the ABS or the Optimizer cache depends on the following conditions:
- If the Planned Start field and Planned End field have values, then the choice of the ABS or Optimizer depends on matching these values to the dates for either the ABS or the Optimizer horizon.
- If the Planned Start field and Planned End field do not have values, then the values for Earliest Start field and Earliest End field are used. If these values are in the Optimizer horizon, then the activity goes to the Optimizer cache.
- If neither of these conditions succeeds, then an error message appears.