fishtech Posted February 6, 2008 Posted February 6, 2008 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.
Fenton Posted February 6, 2008 Posted February 6, 2008 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?
fishtech Posted March 14, 2008 Author Posted March 14, 2008 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.
fishtech Posted March 14, 2008 Author Posted March 14, 2008 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.
vi Posted April 1, 2008 Posted April 1, 2008 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.
fishtech Posted April 9, 2008 Author Posted April 9, 2008 (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 April 9, 2008 by Guest
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now