Handling dependencies

My case bellow could be a small question or a big issue:

  • I add a Company via a form and such data is stored in GS sheet=Companies
  • Within Company’s record (once created of course), I have another form to “Add Contact” to add contacts associated with Companies - and such data will be stored in GS Sheet=Contacts
  • The “Add Contact” form automatically takes Company name and fill Column=Comapny in the Contact tab.

If I change company name (from App), this change doesn’t automatically get updated in the Contact tab!!!

This is one example out of many other dependencies in the App, such as:
Customer >> Agreement >> Invoice >> Payment
Supplier >> Purchase Order >> Bill >> Payment
And so on…

And I hope the answer won’t be "Use google script to do global tagging, find & replace :slight_smile: )

I have recently changed my app to use RowID and actually pass the RowID in the form. So in your case, you would pass the company RowID instead of company name into the contacts sheet. This allows for the name to change since RowID would be static. You could also do this with Unique ID if you chose. You can then use relations and lookups to pull in the company name from the ID.

6 Likes

Thanks Jeff

App is now much reliable with your recommendation.
It wasn’t easy to rework App pointing records to Row_Id, but this is indeed the necessary evil.

1 Like

Hi @Jeff_Hager
+1 for using ID instead of display names for relations.

Wondering how would you do the reverse, meaning

  • have an existing Contact resource
  • whithin the edit page of that contact, have an “add a company” button form

Previsouly, it was possible to put company.rowID into contact.companyID because in the form we had a Screen Column “rowID” that gives us the company’s rowID.

But in this case the case the Screen Column component will give us the contact’s rowID, and we need the company’s rowID. How can we make glide copy the newly generated company’s rowID into the contact’s companyID ?

Do you create new rows for each of this, I think you can use a choice component, point to the companies sheet, display the name at the front end and write the row ID in the back end. Would it work, or am I missing something?