Adjusting Table Settings for Viewing All User Records

Hello Gliders,

I created a table in which all columns are user-specific. When a record is added to this table, I can only see the records of my user. I know it is supposed to work this way. However, when another user, say ‘x,’ adds a record, I see a blank row. This means that if there are two records in the table, one mine and one from user x, I can see my record and a blank record. What settings should I adjust so that a few users, like myself and others, can view all the data in the table? Also, is there a way to eliminate blank records so that users can only see their records and not the blank ones?
I need to configure the settings so that there are two groups of users:

  1. Users who can view all records.
  2. Users who can only view their records and cannot even see blank records

That’s not possible with User Specific columns.

You can filter so that empty rows are not shown.

You should be using Row Owners rather than User Specific columns.

1 Like

RowOwner Is not working!

I have two tables, A and B, and Table B is my target table for the navigation tab.

Table A is like a customer table. I have a table A, which is an SQL table. I created a “form container” over it. I want it to be visible once I click the “DisplayForm” button. When I click the button, the button will become invisible, and the form will become visible. I fill in the values and submit it. As soon as I submit this, the ID from the form of Table A is also set in a “Questionnaire” field in the USER table. Now, after submitting the form, it becomes invisible. Its visibility is also dependent on the USER table. Another container becomes visible with two buttons if the customer wants to proceed with further questions or not, and this container’s visibility is also dependent on the USER table.

Table B contains extra questions from the customer all of them here are User Specific (this is the table I talked about above). If the customer clicks “Yes,” then Table B comes into the picture, it will again become visible it. It is a glide table and has an ID field set to the same customer ID using the USER table, as we already set the customer ID in the USER table’s “Questionnaire” field. Table B’s form has many choice questions therefore we created container components for each question each container component visibility is dependent on “step” field in table B. Upon submission, we use a button action to set the “ID” in Table B using the USER table’s “Questionnaire” field. Once the form is submitted, it resets all visibility conditions, and the “DisplayForm” button becomes visible again.

Now I did what you said: I created Table B again from scratch. None of the columns here are User Specific, and I created one extra column in Table B called RowUniqueID, which I set as RowOwner. On the other hand, in my USER Table, I have a column called ROW ID, which I made the Row Owner. Now, from the USER Table, ROW ID is going into Table B’s RowUniqueID (rowOwner) colum, but it just messed things up. I am unable to see the choice question on my tab after setting Table B’s RowUniqueID as RowOwner. However, if I unset RowUniqueID from RowOwner to a normal column, it shows choices on the screen. But this time, if my User 1 and User 2 are logged in at the same time in the app, it overwrites the value of choices. I mean, RowOwner is just messing up basic functionality. At least the User Specific column type was not doing this.

The reason it is working for you is that you are not using correctly.

Row Owners can be either of:

  • an email address
  • a text string that corresponds to a Role column in the User Profile table, that is also configured as the Role in the User Profile configuration.

Given your goal, you will need to use both. Here is what you need to do:

  • Start by adding a Role column to your Users table if you don’t already have one, and configure it as the Role column in your User Profiles configuration.
  • For each of your Admin users, give them a Role of “Admin”
  • Add two columns to Table B. One should be an email column, and the other should be a text column. Make both columns Row Owners. In the email column, add the email address of the user that creates the row. In the text column, add the word “Admin”.

If you do the above correctly, each user will only be able to see records that they have added, and Admin users will be able to see all records.

1 Like

I cannot set the Role column you showed in this screenshot because I have a different source table.

What do you mean? Different source table to what?
The name of the table is irrelevant. Do you have User Profiles configured? Do users sign into your App? If both of those are true, then you can absolutely configure roles.

Ok, I understood let me try the solution

If it doesn’t work as I described, please share some screen shots that show how you have set it up.

It didn’t work which means it is not showing any user choices from Table B, here is what I did.
I created the Email and Role columns (both are Row Owner Types) in USER Table then I created the Email and Role columns (both are Row Owner Types) in Table B as well there value comes from USER table upon Add Row Action (Submission Button). Previously, there was RowUniqueID, which gets its value from the USER table’s RowID (RowOwner column type). However, I still don’t understand the use of the Role column. I am not sure what difference it is making, or if I am missing something

It isn’t necessary to make those columns Row Owners.

Please share some screenshots, otherwise I’m just guessing.

Removing the Row Owner from table B at least showed choices, but it’s still overwriting things. I am sharing a screenshot in the next reply.

Hi, due to privacy concerns, I can only share screenshots via direct message. Should I share them in DM?

Yes, that’s okay.