How to assure that the field technician can only fill the form while at the field location?
Hello! Welcome to the AppSheet Community!
AppSheet has a DISTANCE() function. You can use this this to approximate vicinity. I am not certain how accurate it is - meaning the smallest distance it can accurately compute.
But there is a catch to using it. You need both points to be represented as Lat/Long values.
For your technicians location there is a HERE() function you can use to get his.her current location in Lay/Long.
If your field location is represented in Lat/Long then your are all set. Just use DISTANCE() on that and HERE().
Now for the kicker, if your field location is represented as an address, you will need some way to get the Lat/Long for that address.
Unfortunately, AppSheet does not have a function to do this. ( A carry-over from its pre-Google days. Now that AppSheet is part of Google we hope to see enhancements around Geo-location abilities).
There are ways to work around this.
You could have someone manually lookup and enter the approximate Lat/Long values into the app. Addresses don’t change so it only needs done once.
What some developers are doing is creating an API call to Google service to retrieve the Lat/Long in an automated fashion. Google does have limitations on the frequency you can do this before charges are incurred so check into those limitations