Just learning how to use user-specific columns.
I am not asking users to sign in with email, since users don’t have emails.
So, every time the app is ran, the first row for the users specific column is populated with the user’s input. So far, so good. I then use that value for matching an inline query.
The problem is that the input value is kept in the worksheet and when another user opens the app, he/she will see that value.
Is there a way I can reset the user specific value right away? Or make it “not visible” to others?
You can use a compound action to do a Set Columns to clear the value in that user specific column. Do this at the same time that the user is submitting their selection.
Strange. A User specific column should not be seen by any other users.
Good point. Something not right there…
@gblitzer I don’t think you’re using a USC. They don’t live in the worksheet (if by worksheet you mean Gsheet) but the data editor (if by worksheet you don’t mean the data editor). You further cannot use data stored in a USC to match data stored in an inline query list in the way that you’re suggesting.
Pls, post a screenshot.
I guess it depends exactly what is meant by “inline query list”. I had assumed that the user was typing something into a text entry component, or similar. If that’s the case, then using user-specific columns will work as described. But if they’re using (for example) the built in search bar - then yeah it won’t work. But I don’t think that’s the case. @gblitzer - maybe you can clarify? (as Wiz suggests, a screenshot or two would help).
WRT user-specific columns, you’ll know if you have it set up correctly, as the icon in the data editor column header will appear blue, like so:
My apologies for taking too much time to reply.
I will try to explain my need as clear as I can.
I have a Gsheet with three columns: account number, id and balance. E.g.
A001 | 18118677 | $2,000
A002 | 21125011 | $0
A003 | 11556871 | $1,200
The purpose of the app is to allow users to check their balance. But just THEIR balance. Not others’.
Expected input from user is account number (A001) and id (18118677). The app will return the balance ($2,000).
The id is a personal id like social security number (in Argentina we don’t have SSN).
IMPORTANT: users do not have email addresses.
I hope this helps. I will now get to the app and see if I can add any significant screenshots.
If it helps to share the app itself, I can certainly do that as well!!
PS: it actually has another column with Last Name so users can verify they had input correct accoun number
I started from scratch.
The app in case it helps is this one: https://fonrot-1966.glideapp.io/
I am not being able to make it work.
The idea is that it will bring the balance if and only if account code and id match user input.
It works just for the first row
You don’t want your users to sign in at all?
I think you should since the info is not public but private and specific to individuals.
What you could do:
- Get rid of USP since they are only viewing info they did.not add but added by some1 else.
- Create same columns and populate the cells all over again
- Pull all columns on details screen and add an inline list with search enabled.
- Set visibility conditions to show Balance Xxxx when ID is ahshsje and in that order.
- Ask your clients to type in their unique ID into search bar to reveal balance.
Number 4 you will find really boring and repetitive. You could avoid all this by setting sheet to User profiles or using rowID of some kind. A good free example is the Instagram template.
Thanks. I will look into this with detail.
I cannot ask for sign ins since end users do not have emails.
I will check the instagram template!
In that case don’t check the instagram template…just try & test the steps I have set out.
Wouldn’t your steps allow anyone to see anybody’s balance?
If the ID is tied to the balance then no unless everyone knows everbody elses ID
Ok, can you pls clarify step 4?
I added an inline list and the search works but by default I see all rows. I guess this is what step 4 will prevent but I am not getting it… sorry!
Ok now you have set visibility conditions…go to filter…if ID xxxx then balance 2000 (but create an IF THEN ELSE as easier, otherwise you gonna be at it all this week (assuming you have a long list). There are several ways …let me see if I can find you template.
A template would rock. Yes, I have hundreds of rows
@gblitzer - there is one thing you need to be aware of. And that is whilst it will be possible to “hide” records from users, it will not be possible (AFAIK) to come up with a solution that is truly secure unless you have User Profiles & Row Owners enabled.
Why? Because without Row Owners, all data will be downloaded to an end users device, and then any filtering/visibility shenanigans designed to “hide” data takes place on their device. Whilst this might be good enough for the casual user, it won’t stop the curious. And it particularly won’t stop the (even mildly) tech-savvy curious from gaining access to ALL data.
If keeping this data secure is important, then I’d strongly recommend reviewing the information available in the Glide Security Centre, and in particular the section on Row Owners.
And if as you say your users do not have email addresses, then I’m afraid there may be no way to properly secure this data. So you will need to decide whether “Security by obscurity” is good enough for your (and your users) purpose.
Okay I have done it for you
I did it my way…I kept the USC…that requires a relation …See if you like it
Forgot to set it to copy,you can copy it…
What you need to know:
- I have hidden the sheet with ID and balance
- USC for entering unique ID - if match then balance will show
- Multiple relation (this will show any duplicate IDs)
- Single relation (lookups etc)
For this particular case I guess security by obscurity will be good enough.
I will read the solution posted by @Wiz.Wazeer and probably implement it.
We might consider creating emails for our users but knowing those emails will probably be used just for logging into this app it is not a very efficient solution.
I will go though it in detail. It sounds challenging but then again I guess that’s of more help so I can learn even more