Locator won't match close street number in single address locator

11821
77
11-26-2013 06:49 AM
PeterHanmore
New Contributor III
We have built a locator in ArcGIS 10 SP5 which is based on the US Street - Single Address style.
We have been able to tweak most other settings but are still having issues with street number scoring.
Basically, we would like the locator to rank similar house numbers on the same street/town with a high score.
The default action (from my testing and based on one other forum thread) seems to indicate that the locator is VERY strict about the house number matching - to the point that it will give a high ranking to an address that matches the house number and street in a town hundreds of miles away, but fail to even score the address 100' away.
We have tried playing with the scoring of the FullNormalAddress, NormalAddress and House components but nothing seems to allow addresses with close house numbers in the desired city to be ranked higher than exact house number matches in a different city.

For example:
Search for 100 Main Street, Mytown

Geocoder responds with:
Score: 90, Address: 100 Main Street, Yourtown (could be large distance away from Mytown and therefore totally wrong location).

Yet 98 Main Street, Mytown is only two house numbers away from the desired address.  I would like the locator to return something like:

Score: 98, Address: 98 Main Street, MyTown
Score: 50, Address: 100 Main Street, Yourtown

Has anyone found a solution for this?  Any workarounds?  Apparently this worked as desired in 9.3.1 but was "improved" in 10.0?
Tags (2)
77 Replies
BradNiemand
Esri Regular Contributor

Elizabeth,

 

Sorry, FGDB is short or internal slang for File Geodatabase.  Are you required to use Shapefiles or can you write out a geocoded points to a newer type of format?  If you can write the geocoding results into a File Geodatabase instead of a Shapefile, you might get rid of your locking issue.

 

Brad

0 Kudos
ElizabethWare1
New Contributor

I am not required to use shapefiles. Like I said, that is just what we are using. And I have 2 weeks to get all this working and integrated. I have 3 shapefiles we use to display on the map. This is a layer I am creating to display our active calls. If it will give me the same access and stuff that a shapefile can, I am all for changing this. Right now, this is the only layer I am concerned with. Because we also add annotations/labels to the calls so when can see the call ID and units assigned as well as right click on the call and see details. So if I can still do that, that would be great.

0 Kudos
BradNiemand
Esri Regular Contributor

Elizabeth,

This is what you would need to do to switch to using a File Geodatabase.  First create one in ArcMap in some folder of choice.  Next you will need to modify your code to write to and read from that File Geodatabase instead.  From the code I have seen that would be modifications to the following:

The output featureClass when doing the geocoding would look something like this now:

String outputFC = @"C:\geocoding\redlands\GeocodingResults.gdb\redlands_addr_geocoded";

Also when getting the geocoded featureClass you would need to change this to open the FGDB instead:

IWorkspaceFactory2 workspaceFactory = new FileGDBWorkspaceFactoryClass() as IWorkspaceFactory2;
IWorkspace workspace = workspaceFactory.OpenFromFile(@"C:\geocoding\redlands\GeocodingResults.gdb", 0);

That should be it.

Brad

0 Kudos
ElizabethWare1
New Contributor

Would everything be the same doing it that way. I mean I have a gdb. It creates one when you create an mxd. I am just trying to think of how much work this might be. But since I am stuck anyway... Fix something and hit another road block. LOL

UPDATE - I guess I lied. I have a default gdb. How do I create a new one? Can I use my existing map or do I have to create a new map?

This is all I see

0 Kudos
JoeBorgione
MVP Emeritus

Your user has a default file geodatabase, and it's on you local computer.  Are you sure you want to depend on that?  I don't know where you are storing your shapefiles, but I would suggest a mapped network drive somewhere that gets backed up, and is accessible to your app...

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

Elizabeth,

All you need to do in ArcMap is right click in any folder in Catalog and select New > File Geodatabase

As far as I know, everything else would still be the same.  The only difference is writing to and reading from the FGDB now.

Brad

0 Kudos
ElizabethWare1
New Contributor

Ok got that. How does this work? I have my 3 shapefiles from the client. How do i associate those with the GDB? Or do I not worry about that?

It didn't show my new layer on my map? I am confused how this is supposed to work.

0 Kudos
JoeBorgione
MVP Emeritus

A file geodatabase is nothing more than a container.  You'll need to get your shapefiles into the new file geodatabase. See An overview of adding datasets to the geodatabase—ArcGIS Help | ArcGIS Desktop  for details.

That should just about do it....
0 Kudos