Improving On The MapPoint Geocoding Algorithm - Pt. II
Rainer Barthels database and executable for advanced geocoding in MapPoint
The previous article discussed the limitations of MapPoint's built-in geocoding and presented a strategy using FindAddressResults to work around these limitations. Now we take a look at the executable and database you can use for your own geocoding.
First, download the database and examine the structure.
This is a sample database, the database actually used by the executable need not have these names, but this is the essence of what the program works with. The first several fields are used as input, and the last several fields are output by the program. The database is in Access 2000 format.
Now, download the program (help file included) and place them in the same folder as the database.
When you first start the program it will prompt you for the location of the database and table as well the columns for input and output.
You will also need to specify the version of MapPoint that you will use for geocoding. This version must be installed on your computer.
Note that the sample addresses in the customer.mdb database are all in Germany. If you only have the North American version of MapPoint you may want to stop at this point, go back to the database and type in several sample North American addresses before proceeding.
The program then goes into an interactive mode where you can see and edit records as well as see the output from the geocoding. Click the pushpin in the corner to load MapPoint and perform the geocoding.
That's it! This program is unsupported and for demonstration purposes only, your mileage may vary. However, feel free to leave feedback and any comments or questions in the forum below.
- Eric Frost
Discuss this story in the forum.
Author: Rainer Barthels
Rainer Barthels is working for 10 years in the field of optimization of
vehicles (VRP=vehicle routing problem). He studied phyiscs at the
university of Stuttgart and is now senior project manager at
Kempten/Germany but heavily involved in programming (Delphi, C++).