Can someone answer this question for me.
Preamble: running ArcGIS desktop 10.3.1 with Business Analyst 10.3.1 2014 and 2015 data.
In ArcGIS, in one of my maps, on the Geocoding toolbar dropdown list I see a number of geocoding services listed.
Thus on one of my maps I see these:
World Geocode Service (ArcGIS Online)
MGRS (Military Grid Reference System)
USA Geocoding Service
BA Online Locator
World Geocode Services is an online service. How ArcGIS desktop knows about it is beyond me -- but it is the services I usually employ
MGRS is another mystery that I cannot find anywhere on my local machine. We have never used the any military specialty extensions
BA Online Locator seems to also be an online service: I don't think we have a license for it, and I don't know why it shows up
USA_LocalComposite is a local locator and comes with the BA2015 data
USA Geocoding Service is also a local locator and comes with the BA2014 data
On a different map, the dropdown list shows items 1,2,3 and 4 from my list above, but not item 5.
In ArcCatalog, when run the Geocode Addresses tool (ArcToolbox=>Geocoding Tools=>Geocode Addresses)
I see only the MGRS locator in the dropdown list. I understand
how I could access the two locators that come with Business Analyst
but I have no idea how I can tell it to use the online World Geocode Service
nor do I don't understand why I get two different lists of possibilities.
So can someone answer these questions:
1. Why do I get different dropdown lists?
2. What is BA Online Locator and MGRS ? And why are they showing up?
3. How can I tell the tool in ArcCatalog to use World Geocode Service ?
4. How do these dropdown lists get populated in the first place ?
5. Why do different maps show different dropdown lists?
6. Is there some special config file that I need to edit by hand?
The MGRS locator is part of the default ArcMap Install, you can find the locator called MGRS.loc in the following folder (presuming standard install):
C:\Program Files (x86)\ArcGIS\Desktop10.3\Locators\
As a follow up to my original post I have some additional information from my own investigations.
1. The list of coding services from the drop-down list on the Geocoding Toolbar
seems to be stored on a map-by-map basis. I cannot find this documented anywhere within ESRI's online pages
This seems very inconvenient. There is no python API to change this per-map data
and if one wishes to change the list of locators specified one has to laboriously go through each
map and point and click each time. I have never understood why ESRI cannot make every operation
that is available by pointing and clicking also available as an API.
2. The BA Online Locator seems to also have been installed with BA2014 data.
There is a file named BA Online Locator.loc under the business analyst data installation directory: <top level>/Datasets
It would be very helpful were ESRI not to keep changing names of locators like this.
It just creates confusion and appears to have no great purpose. And if the locator
does indeed change from one data release to another (certainly possible) then
why not give it a name which gives the user some clue whence it came???
My other questions remain unanswered.
I will answer my own question.
In Arcmap the list of geocoding services comes from, potentially, 3 places:
The map itself (stored internal to the .mxd)
The system configuration file: C:/Program Files/ArcGIS/version/Locators/DefaultLocator.xml
The per-user config file: C:/Users/user/AppData/Roaming/ESRI/version/Locators/DefaultLocator.xml
All three are consulted by Arcmap, but, obviously, the first is not available to ArcCatalog.
Hence the difference.
There should still be an API to query and change the list of geolocators stored in the map.