Issue saving data on a column that is both Relational and Row-Owner

Hi All,

I am having an issue saving data from a Add form into a child table, specifically in the relation field which is also a row-owner for our clients/companies to access their respective data/workspace.

For details sake, I have a Companies table related to a Users table via fields Companies.[Row ID] and Users.[Company Code] respectively. One caveat here is that “Company Code” is also set a “Row Owner”.

In summary, the situation is that adding data seems to work initially, then after refreshing the screens, “Company Code” loses its data for that row.
Any insight on this matter will be greatly appreciated!

Here is the break down:

1 – Figure 1: Users table before adding data

2 – Figure 2: Add screen for a user under company “Atelier D’Afrique”

3 – Figure 3: Users table after adding the data (initially without refreshing)

4 – Figure 4: Users table after refreshing: the data in the “Company Code” vanished

Thank you,
-Marce

I’m not sure what your intention is by setting those two columns as row owner columns. RowID’s can’t be used as row owners unless you have modified your user profile configuration to use Roles, and that Role setting is pointing to a column that contains a RowID in the user table. Row Owner columns can only contain Emails and/or Roles. Based on what I’m seeing, it doesn’t seem like you are assigning either to those two row owner columns, so essentially you are declining access to those rows for everyone. That alone is probably the source of a lot of your issues.

I would start by getting familiar with how row owners work.

2 Likes

Hi Jeff,
Thanks for the quick reply, so I recently got pretty familiar with the videos you posted in your response. In fact, I have used some of info and applied it to my use-case of a multi client/company App.
What I’m trying to accomplish is using “Role” to target a client/company based access model, and at the same time target a global admin based access model to be able to manage each client without the need to go to the back end. This way, a global admin can manage client/company request very easily.
So, it all works fine when I’m entering the data manually in the Users table.

The issue actually comes when trying to create a user record via add-screen. That’s when the “Company Code” column refuses to persist the data.

A short break down:

1 - I used “Role” to help compartmentalize app access by client/company

Glide_Users_figure5

2 - I used “Company Code” for a company specific access, and “Company Global” all company access (these records seen here were manually entered, with the App working as planned)

3 - When trying to enter a new user record via Add-screen, “Company Code” does not persist the data. I wonder if having the same column be a relational and row-owner causes these features to cancel each other out, thus causing data not to be saved?

Thank you,
-Marcel

Does the user creating the record have the same Role (Company Code) as the user they are adding?
If not, what you see is correct and expected behaviour.
Users cannot assign roles that they themselves do not have.
There are only two ways to do this. Either by manually entering in the Data Editor, or via the API.

2 Likes

Hi Darren,
Right on, you nailed it!
I was under the impression that the secondary column (Company Global) I set up for global-admin access was sufficient for creating users across other clients/companies.
After your suggestion, I tried by using an admin of the same Role (Company Code), now the data in Company Code persisted.
So, for global admin operations, I have a few workarounds in mind, including API if necessary.

Below is the screenshot of the working outcome.
Thank you very much!

Hi Darren,
I am at the point where I need to automatically update a Row-Owner field using API. Do you have a link or documentation to carry out such task under the business account?
Thanks!
-Marcel

Have a look at the below. Not exactly your use case, but will give you the general idea.

1 Like

Thanks Darren! I’ll check it out and see how it can help.