Proper use of Unit and Unit Type in Point Address Role

2607
7
04-21-2020 02:20 PM
JoeBorgione
MVP Emeritus

ArcGis Pro 2.5

I was into Create Locators pretty hot and heavy, but in my most recent position, I've not been dealing with locators.  What I am dealing with is deploying the ESRI  Data Management Solution; I'd like to have a schema for my address points that will be optimal when used with an Address Point Role locator.

The Solution has a field called Unit Type and provides a Domain with entries like APT, Unit etc.  It also has a field called Unit ID which presumably would hold a value like A,B or C; 101,102,103 etc. Here is a snapshot of some addresses I'm working with.  Unit_Designator is our current field for unit and I added UnitType for this test:

Using the Create Locator tool, I map the fields as shown above to in their respective roles.  However when I search for the address 3694 S BLAZING OAK DR Apt A, all it returns is 3694 S BLAZING OAK DR .  Out user base typically uses # in front of a unit number like this: 3694 S BLAZING OAK DR #A and at one time (an earlier version of Pro, 2.4.?) that worked.  I have never used the unit type field before today.

I must be missing something here as I cannot resolve for a sub unit with an address point role locator.  What is considered best practice for an address point schema to support new style locators?

Shana Britt

Brad Niemand

Eric Anderson

That should just about do it....
0 Kudos
7 Replies
ShanaBritt
Esri Regular Contributor

Joe:

What you have is the correct schema for creating a PointAddress locator that supports subaddresses. When building the locator in the Create Locator tool assign UNIT_DESIG to the 'Unit' locator role field and UnitType to the 'Unit Type' locator role field in the Field Mapping. Is the reference data to build the locator in a file gdb or SDE? If there is an address id for the base address that links to the subaddresses, it would be good to assign that field to the Address Join ID locator role field in Field Mapping.

JoeBorgione
MVP Emeritus

Thanks Shana-

...assign UNIT_DESIG to the 'Unit' locator role field and UnitType to the 'Unit Type' locator role field in the Field Mapping...    Check.

Is the reference data to build the locator in a file gdb or SDE?   FGDB (at least for now...)

If there is an address id for the base address that links to the subaddresses, it would be good to assign that field to the Address Join ID locator role field in Field Mapping.  I'll add one,  but given I'm not using a separate table for them, I never thought that to be necessary.

However following your suggestions, I still get the same results:

The labels indicate the House Number, UnitType and UnitDesiginator.  These are just a test sample of points and I purposely put Apt A away from the the base address point.   Here are the tool parameters I used:

Country or Region	USA

Primary Table(s)	TestAddressPoints PointAddress

Field Mapping	
'PointAddress.ADDRESS_JOIN_ID TestAddressPoints.JoinID';
'PointAddress.HOUSE_NUMBER TestAddressPoints.ADDR_HN';
'PointAddress.STREET_PREFIX_DIR TestAddressPoints.ADDR_PD';
'PointAddress.STREET_NAME TestAddressPoints.ADDR_SN';
'PointAddress.STREET_SUFFIX_TYPE TestAddressPoints.ADDR_ST';
'PointAddress.STREET_SUFFIX_DIR TestAddressPoints.ADDR_SD';
'PointAddress.SUB_ADDRESS_UNIT TestAddressPoints.UNIT_DESIG';
'PointAddress.SUB_ADDRESS_UNIT_TYPE TestAddressPoints.UnitType'

Output Locator	C:\GIS\AddressDataManagement\Address Data Management\TestAddressPoints_03
Language Code	ENG

Shana Britt

That should just about do it....
0 Kudos
ShanaBritt
Esri Regular Contributor

Joe:

I mocked up some data based on your screenshot and cannot reproduce the behavior you described. I get match results for each unit whether I use # or Apt as the unit indicator. Below is the field mapping from the locator properties.

Do you get different results when you compare the locators with and without the JoinID mapped?

JoeBorgione
MVP Emeritus

Do you get different results when you compare the locators with and without the JoinID mapped?  

No. With or without a JoinID mapped, I get the same results as shown in my screen capture above:  when entering the base address with a unit, it only matches to the base address.  If you are not able to reproduce the same behavior, it must be something I'm doing wrong on my end.  (Wouldn't be the first time, right?)  I'm at a loss though as to what that might be.  As everyone else is, my team and I are all working from the comfort of our living room couch, but I will have another co-worker try it and see what they get....

I'll keep you posted.

That should just about do it....
0 Kudos
JoeBorgione
MVP Emeritus

Well....  I don't know what the difference is, perhaps sun spots?  I created a brand spanking new point feature class with 3 points shown in the attribute table below. I get the correct return for each.  In fact, I can enter # or Apt for those two with Units and get the correct return...

Shana Britt

That should just about do it....
0 Kudos
DMOB17
by
New Contributor II

JoeBorgione Were you ever able to find out what was causing the inability to locate these addresses in your original layer? We use A, B, C, etc. also and I'm having a heck of a time trying to get a locator to return these addresses.

0 Kudos
ShanaBritt
Esri Regular Contributor

There have been several changes to the way subaddresses behave with the locators since this issue was posted back at ArcGIS Pro 2.5. @DMOB17 , what version of ArcGIS Pro are you using? If you can show a screenshot of your locator properties with the reference data field mapping, I may be able to tell if something is off. A new tutorial was added in the latest release of Pro that builds a multirole locator that includes searching for subaddress locations that you may want to check out. https://pro.arcgis.com/en/pro-app/2.9/help/data/geocoding/tutorial-create-a-multirole-locator.htm

0 Kudos