I had a deployed plan that did not pass its beta test. Unfortunately, I need features that Appsheet does not offer in order to make it work properly for my users. I undeployed it and made the account a free prototype account. Appsheet is sending me messages that my account will be locked because I had over 10 users in the last month. I assume I paid a month in advance when I paid for 25 users. My credit card was charged accordingly. Please do not lock out my account.
Additionally, may I humbly ask what features you need that AppSheet couldn’t be able to offer? May be we can propose alternative solutions. Thanks.
I posted the following on Google+ and sent Appsheet an email asking for the features. My feature enhancement request was denied.
Very close to nailing down a very useful and needed app. Have done extensive beta testing with users with demanding ease-of-use requirements. To meet my users’ needs, I need to add two features to my app:
The LatLong column type needs to immediately start seeking its coordinates upon opening a data entry form.
The form needs to perform an automatic save exactly 15 seconds upon opening the form. The autosave would be performed even if the form still has required fields that have not yet been populated. The user would need to see the same error messages you see when you try to save the form manually with unpopulated required fields.
Does anyone have any tricks up their sleeves that could address these features? Or are these new feature requests?
#1 - Capturing a LatLong value of a user in a form is possible just having a column with HERE() as an initial value
#2 - Unfortunately, AppSheet does not have a counter or a timer feature available. And by-nature and by-logic it’s not possible to save a form - even normally - when there are required fields and they are not filled by the user. For sure you can calculate the time passed between active/activated/focused fields when a user is filling the form but (i) it’s not possible to match an ‘exact’ 15 secs and (ii) the user cannot save the form without filling the required fields, but cancel it.
Here() does not provide the current location. Just the last known location which could be miles away.
As far as saving the form, I want the save function to work exactly as it does now but with a timed autosave attempt. 99.9% of the time my users will have filled in the form within 15 seconds. Most under 5 seconds. It just take up to 15 seconds for LatLong to generate the current location. The users need to start driving and can’t wait the 15 seconds hence the auto save after 15 seconds.
HERE() provides the current location provided your users have activated their location setting in their mobile device. If not, it tries to triangulate the users location as per WiFi or 4G, so the accuracy might differ for sure.
Have you tested the here() function on the road? Have you read Appsheet’s documentation on the here() function?
Being an AppSheet Partner and Developer, I believe I have used and tested the HERE() function and I believe I have a good command of the documentation. Honestly, I couldn’t be able to understand your point here. We have many customers who are delivering goods or picking-up kids from primary schools that we had built apps (and one is already an on-going development) which are extensively using the HERE() expression and we haven’t experienced any problems with the HERE() expression nor we had received any negative feedback. So provided you can elaborate your query, I will try to help.
In my tests, I found it to be a useless function. The following Appsheet documentation describes it as such. You have to manually do #4 below to get an accurate location.
Capturing GPS Location
How to capture a location in your app.
Written by Santiago Uribe Montoya
Updated over a week ago
You can use a LatLong or ChangeLocation column to capture a GPS location. In apps that include these column types, the current location is polled once per minute.
There are four ways to capture the GPS location in a form:
- You can assign the LatLong column an AppFormula value of HERE() . This will automatically populate the LatLong column with the most recent polled location each time a new entry is added or an existing entry is edited.
- You can assign the LatLong column an Initial Value of HERE() . This will automatically populate the LatLong column with the most recent polled location when an entry is first added, but not when the entry is edited.
- You can use a ChangeLocation column to automatically capture the most recent polled location when a particular data change occurs. Read more on Change column types here.
- You can manually capture the current location. The input field for a LatLong column has a clickable icon that lets you capture the device’s current GPS location. Rather than using the polled location, with each button press the app will try to obtain the most accurate current location it can for up to 30 seconds or until an estimated accuracy of 10m is reached. This method offers the highest accuracy and displays an estimate of the accuracy (in meters) within the app.
Additionally, you can explicitly type in a LatLong value, such as: ‘46.34,-32.34’.
Have you read also this part in the same documentation?
Accuracy of Results
AppSheet captures location using the HTML5 geolocation API, which draws from a variety of available mechanisms to estimate the current location of the device:
“The Geolocation API defines a high-level interface to location information associated only with the device hosting the implementation, such as latitude and longitude. The API itself is agnostic of the underlying location information sources . Common sources of location information include Global Positioning System (GPS) and location inferred from network signals such as IP address, RFID, WiFi and Bluetooth MAC addresses, and GSM/CDMA cell IDs, as well as user input.”
Since the actual location capture mechanisms are device dependent, maximum available accuracy may vary depending on local conditions such as network or GPS availability and reception, device hardware or operating system, and the browser running the app. As such, a consistently high accuracy cannot be guaranteed. The manual capture mode of the LatLong input provides the highest available accuracy and is recommended over use of the HERE() function in cases where high accuracy is especially important.
Rather than capturing the GPS pos with
HERE(), the users can simply press a button next to your location field to capture their position automatically provided you need a very high accuracy. It even isn’t a matter of a second actually. So I still couldn’t be able to get your problem actually, sorry.
You are correct and this is what I beta tested. Many of my users had difficulty navigating this feature. A 65-year old bus driver has a hard time finding the little square to press. Plus, from a design standpoint, it is superfluous and inelegant. Lastly, to get high accuracy (which I need), it takes anywhere from 5 to 15 seconds. Two seconds get you something but it is typically not highly accurate.
Thanks for thinking about my issue.
Unfortunately, this is my 2nd attempt at an app and both have failed due to the inherent limitations of a no-code system. Although I am a full-fledged programmer, I have been trying to use Appsheet knowing full well that I could easily run into a wall where you be less likely with coding.
You may have right on some points, but on the other hand you might have not. I’m a software developer too with having a very good command of programming languages but I must admit that despite of some locking aspects, I can develop quite good, complex and well serving apps with AppSheet within a quite small amount of time, average effort that I will not be able to develop with any of the SDKs. For sure it totally depends on what you want to achieve, but there are quite good work-arounds for the limits that AppSheet could not offer right at the moment. If you think from the point of cost & benefit, it totally saves my time and I no more pull my hairs between the debugger, the code window, SDK docs etc.
I totally understand your point that sometimes the limitations of the UI/UX might be hard to use especially for some users with older age or who are not so tech-savy. But I’m sure there are ways to enhance the design and the development.
So, as we are on the same page with both being programmers, I feel that may be we can construct a good synergy to solve your issues and power-up your design with trying to brain-storm what might be the best approach and solution.
Plus I do not want to support both IOS and Android with coding.