ArcGIS Pro 2.9 Map tab-->Locate Tool-->Search
The issue is the Locator will not return results for an address with sub units (e.g. 123 Main Street Apt 1). It only returns one choice for the primary address. I have created a geocoding locator as a PointAddress Role and input all parsed fields including Unit, Building, Level in addition to Prefix, Name, Type, etc.
According to Primary locator roles, or Tips for improving geocoding quality, for field mapping, I can either reference a Unit field or I can reference the same Unit field for From/To where both the values are the same.
I have also enabled sub-address suggestions in my Locator properties Suggestions for partial subaddresses.
Here is what I expect the results to be where in this example they actually use a keyword Unit, but I don't believe that is even necessary. Using type ahead, 3700 Dean Dr. should return all the choices.
Did you ever find resolution to this? We're also having issues with subaddresses not being suggested.... we're using Pro 3.1
Yes our locator is now performing as expected. Here are things I either learned from esri tech support or learned through trial and error:
For the Create Locator tool:
Thanks Darrin........ not having a parent address was our issue. We scripted those to be added and the subaddress portion of the locator works perfectly now.
Would you care to share the script to that you used to add points based off of subaddesses? I'm running into the same issue. I'm currently in the process of moving our LGIM data into Pro and I'm finding a lot of nuances that seem to break years of work done in ArcMap.
Attached zip contains a readme and a python script.
@Darrin-Smith Thank you!
I'm having issues with the Global and boto3 modules. The "ProgressBar" too but I'm less worried about that at the moment. See errors below. Running Python version 3.9.18. I will try to do more research on it this evening try again tomorrow. Thanks for the assistance. I'm fairly new to python.
Keep in mind, this code is just one part of thousands of lines to accomplish many specific tasks. The imports at the top of the script are just residual for my purposes. I would say you can delete all those lines except for import arcpy and possibly import datetime as time is reported through the script. If you look at the INPUTS/OUTPUTS near the top, I tried to give you an idea of variables used in the script. I retain all my variables in Global hence the import statement you are having issues with. You will need to define your local variables and my recommendation would be to use the ones I have to do so. For example, the variable for "in_layer_name_path" should point to your featureclass for all your address points. You'll also find I use fields you might not have and schema's I use that might not be applicable. At a minimum, to resolve geocoding issues with sub addresses, you need to create a faux point that has a parent and append that point to your master set and then run the Create Locator on that set in order to account for the parent. My script will tell which points don't have parents. Then your geocode result should give you options for the parent sub addresses. My script goes one step further to actually determine where the mean center of the faux point should be based on proximity to all the sub addresses. Hope this helps.
Thanks. I made the changes to the input/outputs. I really appreciate the notes! I was confused with the imports mostly. So that explains it.
Again, thank you so much. I appreciate your assistance and response. I should be able to get this off the ground shortly. ...As long as I'm not pulled in another direction before then. 😕