GeoCoding
Introduction
With the introduction of the interactive maps in the web-based Gantt scheduling requires the lattitude and longitude of an address so that it may display a map pin. The Scheduling integration doesn't require a lat/lon to be passed meaning the Gantt required a function for geocoding the given address via HERE Technologies (ServicePower's Mapping Provider) in order to display the pin. The initial implmentation of this resulted in this work being undertaken by the Gantt client and resulted in unnecessary duplicate calls and loading time each time the map was opened.
To make this more efficient and faster we can cache the geocoding results on the server and, in most cases, remove entirely the need for Gantt clients to request them from HERE, vastly improving the map load time on the Gantt.
Jobs booked in scheduling server with no lat/lon will make an asynchonous geocoding request via HERE. The results will be stored in the new geocode cache.
Please Be Aware
Any lat/lons requested through this system will not be used for scheduling purposes such as travel calculations. The address provided at booking is the authority with regards to scheduling. The geocode cache's only purpose is to populate the map pins on the web-based Gantt.
Parameter changes
TABLE: SP083_SYSTEM_PARAMETERS
Database Name | Database Description | M | Scope | Min Value | Max Value | Initial Value | Default Value |
gc_country_code | ISO 3166-1-alpha-3 country code list used in geocode lookups | O | F | n/n | n/n | Null | none |
gc_enabled | Address geocoding enabled for Gantt clients | O | F | n/n | n/n | 'NO' | 'NO' |
gc_retry_max_interval | Maximum interval between retries in seconds | O | F | 30 | 86400 | 600 | 600 |
gc_retention_window | Number of days geocode cache entries will persist in the database from initial write | O | G | 0 | 730 | 365 | 365 |
http_concurrent_max | Maximum concurrent http requests | O | F | 1 | 60 | 10 | 10 |
heremaps_api_key | The API key to be used in HERE requests | O | G | n/a | n/a | Null | none |
As this feature currently relies on HERE, an app id and app code is mandatory for this feature to function.
Please Be Aware
- As this feature currently relies on HERE, an app id and app code is mandatory for this feature to function.
- Please contact SP Support if you require the App ID
- SP083.postcode_app_code and SP083.postcode_app_id must not be empty if gc_enabled is set to 'YES'.
- The sp083 parameter gc_country_code may be used to narrow searches to specific countries.
- Each country must be an ISO_3166-1_alpha-3 entry.
- Multiple country codes can be set using a csv, e.g. "USA,CAN".
- If this parameter is left empty the search will be global.
TABLE: SP245_ID_CONFIGURATION
Additional entry
ID: Geocode
Example Configuration:
|
There are 2 new parameters associated with the geocode configuration.
- LatitudePath - A JSON path used to locate the latitude property in the response
- LongitudePath - A JSON path used to locate the longitude property in the response