Update Database from a second Google Sheet

I have an Expense sheet that captures data from users on their smartphones. There are columns in the sheet for values related to “Expense Approved” and “Date of Reimbursement”.

Is there a way to make entries into those columns from a second sheet? I’d prefer not to have the administrators who process expenses making entries in the live data source.

Thanks in advance for any suggestions!

You could periodically use import ranges on both sheets to pull the data from the “live” sheet to the second sheet and the push the data from the second sheet to the live one.
You would import all the rows and columns, except the two you mentioned, in the second sheet. And import those two columns from the second sheet into the live sheet.
The second sheet would be the one that your administrators update those two columns.

Alternatively you could write an app for the administrators, connected to that same live sheet, that would allow them to enter those to values in the live sheet.

Thank you sir. I thought about the second app. Question: If the first app is a Glide Pro app, and the second app is accessing the same sheet, would that have to also be a Pro app?

I assume so based on the fact that you are saying the first one is Pro. I expect over time that you would reach the 500 row limit. However, now that I think about it more, with the recent Glide features of making edit functionality conditional there most likely would be a way of only allowing admins to edit those two columns of data and keep it all within the same app and spreadsheet.

I will explore those admin options on the same app.

Would you happen to know of any video or documentation on how to use the conditional editing functionality that would enable me to set up admins to edit those two columns of data?

Thanks for your help.

I was able to make it work using the conditional editing logic. Thanks again for your help!

I threw together this sample app because I wanted to experiment myself with how to allow different edits by different users within a single app. It took me a bit longer than I expected but I was learning some of the new Glide features along the way.

I believe there are others examples out there that do similar things but again there is a difference in looking at what someone has done and doing it yourself. That said this is not a tutorial but the best way to test this is in the Glide builder.

I would suggest that you change the signed in user a few times to random emails and enter in a few expenses for each.

Then you need to change the signed in user to see the full affect of the admin feature. Start with one@gmail.com. If you set the signed in user to any of those admin emails the image will show. And when you select it will open to the Reimbursement sheet, which in detail view allows admins record payments. So make a copy of the template and hack away at it.

It is not polished at all, just a sort of proof of concept and starting point to experiment further.


What kind of problems did you run into?

PS, your link isn’t working.

It works for me in an anonymous browser. expensereimburse.glideapp.io
Interesting. When I changed the link it appeared to stop taking characters at 20 but I had typed more that did not show. When I did the copy link it must have taken the full 24 characters. Oh well it should work now.

What I initially tired was to create a relation to the list of admin emails and then a lookup but when I tried to use either one as my signed in user email column neither column was in the list to select it. Both showed all the emails but it I couldn’t pick the column. I tried it that way because I thought I saw where you used that technique but admittedly I didn’t check out your sample app. Maybe I did something wrong.

Second link works. It might depend on if you are using a Filter vs Visibility. Filter will use columns from the sheet of the list you are showing. Visibility will use columns from the sheet of the detail record you are currently viewing. I’m guessing you tried to use Visibility. When I add an inline list to Reimbursements, the filter shows the lookup column as an option. If you wanted to used visibility, then I would do the same template-relation-lookup on the home sheet.

1 Like

I started trying this without the Home page and just the Reimbursements sheet. My plan was to filter that down by signed in user. But I realized that that was not the best as the regular user would be able to see the Tab but never have any rows to view. So I changed gears and decided on the Home page and never tried the relation and lookup trick to pull in all the admin emails. Anyway thanks for the tip, it’s a bit more streamlined now with a lot less data in the spreadsheet and all relations and lookups in the columns within Glide.

1 Like

Thanks George. I will check it out.

@Tim_Sullivan I think your expense may be rejected…

1 Like

Depends on how progressive the boss is. :grinning:

1 Like

hehe, I guess it depends on the line of work too.

I actually could never get that one through, though, no matter who I said the client was.

1 Like