BUG in visibility

Hi,

I think I’ve encounter a bug in the visibility feature. see the below example.
i set the visibility to be: "show componenet when Created Budget is TRUE

yet, although this user is FALSE the componenet is still showing:

@Mark, appreciates your help on this

thanks
Yinon

Could you share your app, please?

https://familybudget.glideapp.io/

Hi.

I have found the same problem. I have 2 tabs from the same sheet and with the same filters in the first 2 components (Rich Text and Form Button). However, in the tab to create a post the visibility is not working, whereas in the profile tab it is :neutral_face:

Is it temporary, should I simply re-do the page… How have you fixed your problem? :slight_smile:

Thank you in advance.


It’s very hard to tell from your screenshots what’s going on, especially since you don’t show us the visibility condition or your data. Would you mind sharing your app and describing exactly where in the app you expect to see what?

Thank you for the reply, Mark.

It was my mistake. I wasn’t using the filter e-mail is signed-in user.

Doesn’t seem that @yinon_raviv’s issue was addressed, as I have a very similar issue in my app: owmml.glideapp.io.

I’ve set the visibility criteria for the create profile button to show when the Client is empty, or Email relation is empty. It seems to do the opposite, as there is data in the field.

Is there a solution or are we systematically making the same error?

What do your columns look like in your data tab? Judging by what your image shows for visibility, you should really be using ‘isn’t signed in user’ to control the button. Simply checking if a relation is filled out not will only work once until the first order is created. I’m not sure what your client column contains.

Thanks for your reply. The data for the relevant tab appears as follows:

The reason I am not using “isn’t signed in user” is because as per the business logic of my app, signing in does not constitute making a profile, as a profile requires one to input their name, address, telephone number, et cetera. As a result, using “isn’t signed in user” would treat someone who has signed in as if they were someone who had created a profile. This is why I’m also not using email as a visibility filter. Upon creating a profile, a Client’s name is read into Client. The email relation was an attempt to arrive at the same result in a different way, but it did not work.

I hope this adds clarity.

First of all, I have highlighted several times in the forum how to set conditional visibility using ‘signed in user’, where only those users that fully complete their profile will have a button hidden from view, so it is definitely possible.

As for you visibility issue, I can’t tell if your detail view is filtered or not. Are you actually viewing a row in the table where you are signed in as test@tester.testing, or is the detail screen sitting on a non-existent row because you are signed in with an email that’s not in the table…causing the visibility conditions to actually be comparing to empty column values from a non-existent row?

Thanks for this direction Jeff -
With the first suggestion, it seems I’d have to be able to verify the profiles created by my users from the back-end in real time, as there are no existing users to begin with, and even as they come, I’ll have to be on standby to do verifications on each newly completed profile. Is that so?
The second suggestion was rather confusing due to the differences in the use cases, but from what I gather this requires the creation of a template column(s) to link a boolean value with another column in the sheet, a relation column to link two sheets, and a lookup column to fetch correspondent data from the same sheet? I’d appreciate it if you confirmed this appropriation / interpretation of the method.

As for your query, yes, I am viewing as / signed in as test@tester.testing and the results do not change no matter how I sign in or the platform I use to view the app. The detail screen is not sitting on a non-existent row.

Those examples were purely to show the method. I seem to be typing those steps over and over on a daily basis on different threads, so when possible, I’ll just share an existing post of I’ve already responded to. As far as the relation, lookup, and setting the visibility/filtering by signed in user, that part of the method should be the same for your case. I’m not expecting you to stand by and verify each profile. What I’m saying is to have a value in the user sheet that’s common for all users that have finished their profile. This can simply be a template if a row exists, or in your case, maybe use an IF/Then column and set the result to ‘true’ once the user has filled in their name or any other values for their profile. What you want is a common value between the sheet/tab that you want to set visibility/filtering and the user sheet. The key is to get an array of user emails from your user sheet that have completed their profile. Then you can use ‘is signed in user’ or ‘isn’t signed in user’.

With your current visibility issue, I’m confused how the sheet you are showing (appears to be an orders sheet) is related to the Categories tab where you are showing the Create Profile button. There might be something that I am missing. I envision whatever sheet you are using to for the categories tab would be the sheet that contains the template/relation/lookup columns to make the button show/hide per user.

Hi @Mark @Jeff_Hager

I have a kind of problem with it. I don’t know why multiple conditions must be all AND or all OR, not a mixture

I mean, I can’t get this condition for example:
When Color is Blue
AND
When Switch1 is TRUE
OR
When Order isn’t EMPTY

Is it by design or is a real bug?

Thanks for the help
Gavp

It’s kind of limiting, but I think that’s how it’s designed right now. How are you attempting to check your conditions:

(When Color is Blue
AND
When Switch1 is TRUE)
OR
When Order isn’t EMPTY

It is it like this:

When Color is Blue
AND
(When Switch1 is TRUE
OR
When Order isn’t EMPTY)

I suppose it’s limited to only ANDs or ORs because there is no way to differentiate order of operations with parenthesis. In programming languages, the OR always takes priority it it’s True and no parenthesis are used to check multiple values as a group. So in your case, ‘Order isn’t EMPTY’ is checked by itself and the other two conditions are checked together.

Yes @Jeff_Hager, I know the problem associated to lack of parenthesis

Anyone can be confused from third condition if there is no a parenthesis in some place. For it is that I’m asking and I guess, in that way it was designed.

Saludos!

1 Like

Right now it’s limited this way, until we have found a good design that works with more complex conditions.

What’s the exact condition you want to use?

1 Like

Just a simple mixture @Mark when there are more than 2-3 conditions

Nothing complex but when I saw that behavior I had to create other ways and filters to have only ANDs or only ORs

To improve it would be “one small step for Glide, one giant leap for mankind” :innocent:

Feliz día!

I’m sure you figured something out already, but I suppose templates can come into play here, so you could combine ‘blue - True’ for example for your AND side and still use OR to compare the template or the other variable.

1 Like

@gvalero Could you give a specific use case, please?