Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 6072 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

Hi,

Anybody know an easy way to get 3000 addresses from a FileMaker database into a GPS unit? I'd like them to be shown as waypoints/points-of-interest. Possibly via parsing the addresses into longitude/latitude?

I am looking to get clients' addresses from our customer relationship database into GPS systems. This will help oour mobile sales team sales team.

FYI, all addresses are in USA and we are open as to which model/brand of GPS units to buy.

Has anybody had any success with this?

ft.

Posted

As far as getting the latitude/longitude, there are a few sites that have web services for this. Some of them (Yahoo, Google) have very restrictive licenses. But for 3000, that shouldn't really be a problem.

You could get them via an url request, with an xml result, using an xsl file to Import XML into FileMaker. Or some other ones you could just parse the data easily with text functions.

What platform, Mac, Windows, both?

  • 1 month later...
Posted

Sorry for omission - platform is Mac.

I found these guys who will provide lat & long coordinates for up to 20,000 addresses for $50.

http://geocoder.us/help/databureau.shtml

I will probably use their service on my current data to get the project going.

longer term I will work on something to pull try & geocodes into FileMaker on the fly when new customers are entered.

Thanks,

ft.

Posted

In fact I found http://www.gpsvisualizer.com/geocoder/ which will geocode 1000 addresses at a time for free.

I can the pull the coordinates into FileMaker, and then export to RouteBuddy for route-planning and syncing with the GPS device.

ft.

  • 3 weeks later...
Posted

If you are open to the type of GPS - this can easily be done with either DeLorme or MS Streets and Trips - you can simply export a CSV of your FM data and import those as markers in the both programs. If you go with DeLorme, get the Plus, it has a feature called X-Data which handles multiple datapoints much better than their graphic overlay. I currently have about 7000 datapoints in our map.

If you don't like the idea of having a notebook in your car (which i prefer over those little GPS screens), then there are options where you can take the DeLorm or Streets and trips maps and export them to whatever GPS handheld they support... I have not looked into that in detail, though.

Posted (edited)

Thanks. I'm on Mac using RouteBuddy at the moment.

In the end I modified this script http://my.advisor.com/doc/18834 to automatically batch-geocode my addresses using coordinates from Google. The geocode data is returned to a web-viewer, and you can extrapolate the date with some calculation fields. You just need a Google API key (takes 30 secs to get) and to create the fields. My script looked something like:

Allow User Abort [ On ] 

Go to Layout [ “Geocoding” (CustomerData) ] 

Go to Record/Request/Page 

[ First ] 

Set Web Viewer [ Object Name: "GPSWebService"; URL: "http://maps.google.com/maps/geo?q=" & CustomerData::GeocodeAddress & 

"&output=csv&key= MyGoogleAPIKey" ] 

Loop 

Pause/Resume Script [ Duration (seconds): .5 ] 

Set Field [ CustomerData::GPSWebViewerContent; GetLayoutObjectAttribute("GPSWebService"; "content") ] 

Exit Loop If [ not IsEmpty(CustomerData::GPSWebViewerContent) ] 

End Loop 

Set Field [ CustomerData::StreetLat; Middle ( CustomerData::GPSWebViewerContent ; Position(CustomerData::GPSWebViewerContent;",";0;2) + 1; (Position(CustomerData:: 

GPSWebViewerContent;",";0;3) - Position(CustomerData::GPSWebViewerContent;",";0;2))-1) ] 

Set Field [ CustomerData::StreetLong; Right 

(CustomerData::GPSWebViewerContent; 

(Length ( CustomerData::GPSWebViewerContent) - Position(CustomerData::GPSWebViewerContent;",";0;3))) ] 

Set Field [ CustomerData::GPSPrecision; Middle ( CustomerData::GPSWebViewerContent ; Position(CustomerData::GPSWebViewerContent;",";0;1) + 1; (Position 

(CustomerData::GPSWebViewerContent;",";0;2) - Position(CustomerData::GPSWebViewerContent;",";0;1))-1) ] 

Set Field [ CustomerData::GPSHTMLError; Left 

(CustomerData::GPSWebViewerContent; Position(CustomerData::GPSWebViewerContent;",";0;1)-1) ] 

Loop 

Go to Record/Request/Page 

[ Next; Exit after last ] 

Set Web Viewer [ Object Name: "GPSWebService"; URL: "http://maps.google.com/maps/geo?q=" & CustomerData::GeocodeAddress & 

"&output=csv&key=MyGoogleAPIKey" ] 

Loop 

Pause/Resume Script [ Duration (seconds): .5 ] 

Set Field [ CustomerData::GPSWebViewerContent; GetLayoutObjectAttribute("GPSWebService"; "content") ] 

Exit Loop If [ not IsEmpty(CustomerData::GPSWebViewerContent) ] 

End Loop 

Set Field [ CustomerData::StreetLat; Middle ( CustomerData::GPSWebViewerContent ; Position(CustomerData::GPSWebViewerContent;",";0;2) + 1; (Position 

(CustomerData::GPSWebViewerContent;",";0;3) - Position(CustomerData::GPSWebViewerContent;",";0;2))-1) ] 

Set Field [ CustomerData::StreetLong; Right 

(CustomerData::GPSWebViewerContent; 

(Length ( CustomerData::GPSWebViewerContent) - Position(CustomerData::GPSWebViewerContent;",";0;3))) ] 

Set Field [ CustomerData::GPSPrecision; Middle ( CustomerData::GPSWebViewerContent ; Position(CustomerData::GPSWebViewerContent;",";0;1) + 1; (Position 

(CustomerData::GPSWebViewerContent;",";0;2) - Position(CustomerData::GPSWebViewerContent;",";0;1))-1) ] 

Set Field [ CustomerData::GPSHTMLError; Left 

(CustomerData::GPSWebViewerContent; Position(CustomerData::GPSWebViewerContent;",";0;1)-1) ] 

End Loop 

For anybody looking to work with postcode or zipcode proximity searches I think this is the way to go.

hth,

ft

Edited by Guest

This topic is 6072 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.