I have a weird and kind of hard to reproduce bug where form inputs disappear while using the app without any changes to the sheet.
The app always starts out working and I’ve never been able to reproduce it in the web editor but after a while, the form stops working. My hunch is that it only happens after the display goes to sleep or the app goes into the background. Force closing the app always fixes the problem and the form input appears again on a fresh start.
It should look like the form on the right (and often does) but fairly frequently it looks like the form on the left (without any changes to the sheet)
I don’t see that visibility condition in your app. Did you remove it? Could you maybe make a copy of your app in the state where it shows the error so that I can investigate?
Is the single value column toggle part of the form? If so, it is making the form input dissappear without affecting the google sheet. This is a bug that has been mentioned before. Any form input which is used as conditional visibility condition makes the thing dissappear without affecting the google sheet data.
@Mark the visibility condition is still in the app. There is a menu tab called settings, that flicks the Single Value column on and off. Then there is a form button on the details page for each exercise that displays a form that uses the Single Value column to choose which input to display.
The weird thing is that a lot of other data is using the Single Value column and it all works well. Only the form inputs seem to flake out.
I reproduced the bug yesterday and looked at the spreadsheet and all the values seemed normal so I’m not sure I can copy the app in a certain state. It seems that the state goes haywire while running the app. Also because I have two inputs, one that should be visible when the value is TRUE and another when it is FALSE, and neither is showing it seems like the value is neither TRUE nor FALSE.
@vijay The single value toggle is not part of the form and I don’t turn that toggle on or off at all during normal execution of the app. However, there is a form in the Settings tab that can toggle it on and off, but it’s not the same form as the one that glitches out.
@johannth Next time you see the bug, would you mind looking at the spreadsheet to check what the value in Settings sheet is? If it’s empty, then neither condition will work, because one of them checks TRUE, and the other checks FALSE. You could change the latter to say is not TRUE.
@Jeff_Hager The input with the conditional visibility is in a form that creates a new row so I guess it technically isn’t pointing to a row in the sheet. But it uses the Single Value from the row that owns the Detail View.
Something like this:
Row 1 in spreadsheet sheet A that has Single Value = False
-> Navigate to detail view of Row 1
-> Press form button
-> Form uses Single Value from Row 1 to show or hide the inputs
-> Submitting form creates a new row in Sheet B
This all works until the screen is put to sleep by the OS, then it seems that the form is reading the Single Value as null or something.
I made the change you suggested and changed the visibility to IS NOT TRUE. Then the Lbs input never disappears (which makes my app more usable while here in US).
On a fresh install, everything works as expected. However, for curiosity sake, I let the OS take the app to sleep (3 mins), tried going into the Settings Tab, flicking the Default unit is Kilogram toggle on, go back to the form then I still see the Lbs input, not the Kg input as expected. So it seems that the the run-time app loses track of the Single Value and it is probably Null at this point. I tried this again after force closing the app and then toggling work and I always got the correct input.
At the same time I opened up the data editor on Web and the value updates in real-time there when I flick the toggle in Settings, suggesting that the sheet gets updated correctly.
Then I tried reproducing it again and it didn’t happen. flips table. So, a difficult bug, haha
So the bug seems to be still here, and reproduces sporadically after the app goes to sleep, never on fresh open. However, the IS NOT TRUE hacks works so this isn’t really a problem for me until I go back to Iceland. And then I can change the visibility condition again, haha.
I created a much more simpler app that might make it a bit easier to debug the bug: o5oeq.glideapp.io
It has the same general structure but removes all the extra data. I’ve been managing to reproduce it by setting iOS sleep to 30 seconds and having the OS put the app to sleep.
It seems that the Single Value is empty when it goes haywire, as it hides inputs that check for Is TRUE and Is False but shows test on Is Empty.