Bookshelf Home | Contents | Index | PDF |
Siebel Field Service Guide > Scheduling and Dispatch > Scheduling Administration > Setting Up Service RegionsThe geographic area of a service region is defined by ZIP Codes and geocodes. The Optimizer follows these rules for ZIP Codes:
Geocodes and ZIP CodesThe Optimizer uses geocode data and ZIP Codes (or postal codes for international users) to identify addresses. Geocode data contains longitude and latitude coordinates for physical locations (for example, a customer site), down to minutes and seconds. The Optimizer can use data at any level of detail; for example, ZIP Codes or ZIP + 4 codes. As a ZIP Code can cover several square miles, it is preferable to use ZIP + 4, which generally brings the accuracy to the level of buildings for businesses or to within a block or two for residential addresses. The Optimizer requires, as a minimum, ZIP or Postal Codes, country, longitude, and latitude. Five-digit ZIP Codes for the United States are shipped with your Siebel application's seed data. ZIP Code information resides in the data model table (S_ZIPCODE). Table 28 shows the six columns in this table. NOTE: Where longitude and latitude values are the same for two locations, the Optimizer uses the Minimum Travel Time. For more information, see Service Regions View. There are two ways to load data into the S_ZIPCODE table:
Specifications for Geocode DataThere are several vendors of geocode information. Make sure to specify the following information in geocode data:
The Siebel application stores its latitude and longitude in the decimal degrees format, because this format is the most widely used and is easy to use for distance calculations, as shown in the following example. Most data sets are in decimal degrees; if not, use the following formula to convert it from the degrees, minutes, seconds to decimal degrees: Decimal degrees = Degrees + (Minutes/60) + (Seconds/3600) 37 Degrees, 25 Minutes, 40.5 Seconds Data CleansingAddress and ZIP Code accuracy are critical for a schedule optimization. Use of a data cleansing application, such as the Siebel Data Quality module, is highly recommended. For more information, see Siebel Data Quality Administration Guide. Universal Time CodesSiebel Field Service stores all times as Greenwich mean time (GMT). For display in the user interface, it converts GMT to the appropriate local time zone. Scheduling uses the following time zones:
Service Region SchedulesEach service region is assigned a schedule that the ABS and Optimizer use. This may be different than the schedule associated with each employee. Schedules are defined in the Administration - Application screen > Schedules view. For more information, see Defining Schedules. The ABS uses the service region schedule as a base, and then refines its choices of time slots based on the employee schedules. For more information, see Employee Availability and Schedules. The Optimizer uses only the employee schedules. Loading and Reloading Service Region DataThe Optimizer acts on the schedule for each service region. Booking appointments and optimizing the schedule for activities requires the following data:
To carry out scheduling quickly and efficiently, the server copies data from the database into memory caches, one for the ABS and one for the Optimizer. The ABS cache holds the time slots in the future, and the Optimizer cache holds the activities occurring over the next few days. Since the information is cached, it must be loaded into the caches from the database when the service is started periodically to synchronize updates. Initial loading and reloading of data are automatic processes. The data for a service region is copied automatically to the caches each time the server is restarted, and manually by clicking the Load buttons. For more information, see Service Regions View. Repeat requests can also load service region data automatically, using the Appointment Booking System business service. For information about repeating component requests, see the chapter on using the Siebel Server Manager GUI in Siebel System Administration Guide. Since there are two caches, every night, information needs to move from the ABS (future) cache into the Optimizer (present) cache. For example, today is July 1st and the Optimizer horizon holds all activities from July 1 to July 7. The ABS horizon is defined as fourteen days, so the ABS cache holds from July 8th to July 15th. Note that both horizons are measured from the beginning of the Glued period. The end of the Optimizer horizon is set to the same calendar day (at midnight) as the start of the ABS horizon. After it becomes July 2, the old, July 1 data is no longer necessary; it is in the past and is discarded. At the same time, the Optimizer horizon is still looking seven days out, so it needs to load the July 9 data into the Optimizer cache. However, before the data can be loaded into the Optimizer cache, it must be unloaded from the ABS cache. If it is in both caches at the same time, it could be changed in both engines simultaneously. Therefore, the activities and data for July 9 are released from the ABS cache, and then loaded into the Optimizer cache. The ABS should always be reloaded before the Optimizer, so that there are no conflicts in scheduling between the ABS and the Optimizer. Carry out both reloads in the same day. When a service region is being loaded, it is not available for requests. The request is returned with a return code. At the first load of data from a service region, the Optimizer assumes that the data coming from the database was previously optimized. So while generating an initial solution, it tries to keep the assignee as well as the sequence of activities for each field service engineer. It also keeps the time stamp of this load in the cache. |
Siebel Field Service Guide |