App won't refresh with google sheets

I can’t get my google-sheet app to refresh, unless I put the app in “extra” mode, and even with that it takes 3 minutes to refresh.

My app consists primarily of two tables: drivers and riders, and I match riders to drivers with a relation that is many-to-one. Specifically, each rider has 0 or one driver, and that field is changable. Screen shots are attached. It’s a fairly small app, no more than 50 riders and drivers, though the Destinations table has 186 rows.

Is this behavior expected? Are there any workarounds?

I could use glide tables, but google sheets are far more user-friendly. Would excel be a better alternative?


screenshot1

What’s not syncing? Is data changing in the app that’s not syncing to the sheet, or is data changing in the sheet that’s not syncing to the app?

The data changing in the sheet isn’t syncing in the app

What kind of calculations or logic is happening in the sheet? Is it something that could be moved into Glide? The general recommendation is to move as much logic into Glide as possible so you can have a responsive app instead of waiting for data to sync back and forth.

I use Google sheets in one of my apps, but most computation logic is in Glide. For me the google sheet is just a place to store raw data. The sheet doesn’t do any calculations unless it’s something I absolutely cannot reproduce on the Glide side.

There really isn’t any logic or calculations going on in the google sheet, and I could work to replace it. Do you think that is the problem?

I noticed a few concatenate operations on the sheet, which I can move to Glide

Concat operations can be replaced with a template column in Glide.

Other than the concats, if the sheet is not doing much else, then why do you say that there is a sync issue from the google sheet to glide? Sounds like all interaction with the data should be happening in the app, so it really should only be syncing TO the google sheet. In that case, so would think the timing of the sync really shouldn’t matter.

then why do you say that there is a sync issue from the google sheet to glide?

Actually, an administrator edits the sheet, assigning drivers to riders

Would it be better to build that assignment process into the same app, or a secondary app?

The problem is that it’s up to Google to send data to Glide if the data is changing via the sheet. Google only does that every few minutes or more at their discretion. Turning extra sync on in Glide can help a little bit as Glide will then request data from Google, but that’s also every few minutes. There is a cost associated with syncing the data that often, so it’s not feasible to sync all tables every few seconds. Instead you are stuck with a sync that happens every few minutes at best.

1 Like

Not really, it’s just so much easier to do the assignment process on a google sheet. Is there a workaround to get google to send the data more frequently? Would excel be a better alternative?

Also, I’m not sure what you mean by secondary app. If it is a completely separate app, then it would write the assignment to the google sheet. Wouldn’t I have the same issues?

Not really. That’s just how google sheets work…unless a paid version of google services would be better, but I don’t know and I kind of doubt it. I can’t vouch for Excel, but I doubt it would be any better.

I don’t think it would be the same. Glide keeps a separate copy of the data and syncs it with the google sheet. The app only ever communicates with Glide servers and has no knowledge of the existence of a google sheet. Glide servers then sync with the google sheet. Two separate apps would be communicating directly with Glide and Glide’s copy of the data, so the sync between apps should be fairly quick.

If you don’t trust that solution, then I would just build an Admin interface into your existing app. Build screens that only you can access to assign drivers. The drivers won’t see that part of the app. Then it’s a single app that is always communicating with Glide’s copy of the data and all users get those updates almost instantly.

2 Likes

Have you considered the assignment process either via your app or another driver assignment app? I think this is what Jeff is suggesting. Assigning via an app could be easier and quicker than assigning via Google Sheets because the data could be populating a Glide Table (no sync required) instead of a Google Sheet (sync required).

2 Likes

Yes, I have considered it, and I understand that it is what Jeff is suggesting. It is definitely quicker, but I don’t think it’s easier because it requires a lot of information that is on the google sheet. Regardless, I have asked my user what she thinks of the idea, and we’ll go from there, as it might not be a problem with the 3-minute delay

Can you go into more details about this part? What logic are you using for this process that relies on the Google Sheets info?

The problems are:

  1. Screen real estate. The dispatcher needs to have a lot of room to navigate.

  2. I may need to use information about other riders and drivers that are not the ones being assigned.