Firstly, let us define a few terms:
Customer Co-Ordinates: The GPS co-ordinates linked to a customer (either saved during the first visit, or manually added / edited by a user).
Visit Co-Ordinates: The first reliable GPS co-ordinates received after a visit has started.
On - Site: The customer's GPS co-ordinates are within an acceptable distance of the Visit Co-ordinates
Off - Site: The customer's GPS co-ordinates are not within an acceptable distance of the Visit Co-ordinates
The distance between these two points is calculated using the Haversine formula , a very well known formula in navigation. We then apply an "error margin" to this distance (based on the accuracy of the co-ordinates, as well as the actual distance in order to allow for some correction).
For the "tech nerds" out there, here are the formulas we use:
Distance between points in meters:
ROUND((6371*1000*2*ATN2(SQRT(SQUARE(SIN((PI()*[Customer_Activities.Latitude]/180.0-PI()*[Customers.Latitude]/180.0)/2))+COS(PI()*[Customers.Latitude]/180.0)*COS(PI()*[Customer_Activities.Latitude]/180.0)*SQUARE(SIN((PI()*[Customer_Activities.Longitude]/180.0-PI()*[Customers.Longitude]/180.0)/2))),SQRT(1-(SQUARE(SIN((PI()*[Customer_Activities.Latitude]/180.0-PI()*[Customers.Latitude]/180.0)/2))+COS(PI()*[Customers.Latitude]/180.0)*COS(PI()*[Customer_Activities.Latitude]/180.0)*SQUARE(SIN((PI()*[Customer_Activities.Longitude]/180.0-PI()*[Customers.Longitude]/180.0)/2))))),2)
Customer locations (Latitude and Longitude)
[Customers.Latitude][Customers.Longitude]
Visit location (Latitude and Longitude)
[Customer_Activities.Latitude][Customer_Activities.Longitude]
Comments
0 comments
Please sign in to leave a comment.