[Solved] Airtable "get value from cell" block returns cached data [June 2022]

when I update the new value of an airtable cell, it remains the old one when I retrieves it. why indeed?

1 Like

Iā€™ve seen this before, just. tested and can confirm. I will be filing an internal bug report. thank you

as a workaround, i tested the Get Row Object block which returned updated values as expected. You can use it like this by using the get property of object block. the property will be the cell name (exactly as it is written in airtable)

Test project Here

Screen Shot 2022-06-03 at 10.35.40 AM

3 Likes

Glad to hear youā€™re filling an internal bug report. The Get Row Object block does seem more consistent but Iā€™ve had problems with it recently, too, so I hope your engineers will also put it through its paces with Airtable and Google Sheets.

1 Like

Hey!
I did some digging and it seems to be a bug that was initially fixed and has recently started again. The ā€œGet Valueā€ and ā€œGet row objectā€ blocks with Googles Sheet Data Source only update if you close the whole app. When you stay on the app, the data remains in cache and does not update.

Do any of you have the same issue?

1 Like

I just checked and I can see get row block works
image

These are the blocks that reads the existing values
image

These are the blocks to change and test

There is an open bug for that block

You can use the get row block. Here is an example app showing that use case

https://x.thunkable.com/projects/62d1a408bcf1f100112a7d0b/41aa55eb-6b18-409c-8d80-aaca66beb19d/blocks

2 Likes

@Jared_Gibb @domhnallohanlon Where are we with this bug? Itā€™s been months now and it seems like itā€™s still not a reliable block. I just tried to Get Value from a Google Sheet and it kept retrieving a cached value. If I get the row object, it has the correct data but Iā€™d really like to be able to use Update/Get Value blocks as intended.

3 Likes

Hi all,

Ive been having this same issue. Ive tried as suggested and i have used ā€˜get objectā€™ instead but still using old data not live data.

Im trying to create a multiplayer quiz with answers stored on google sheets, so when some clicks a button that says reveal answers if the answers are not all submitted it will say ā€˜please waitā€™ but once answers are completed on google sheets then it will present them. This works the first time you click if all answers are in, but if it fetches answers and then you click again to fetch new data it cannot tell that it is complete as it is using old data.

Any suggestions as to what i might be doing wrong would be very helpful and any work arounds as well would be good.

Iā€™ve been really hesitant to use Google Sheets or Airtable because of this issue. Iā€™ve spent hours debugging what I thought must have been a coding mistake only to realize that itā€™s just due to old data values.

I wish Thunkable Staff would give a definitive answer about this bug. Iā€™ve seen it mentioned as being fixed but itā€™s not. It still happens with both the Get Value block and the Get Row block.

So my solution isnā€™t great but itā€™s to rely completely on Firebase. Itā€™s fast and reliable but the learning curve is kind of steep.

Thank you. Yeah, it is kind of a big problem they need to solve. Excuse my ignorance, but does that mean get value/get object works with firebase or that you need other methods with firebase to make it work?

You need other methods. You donā€™t use the Data Source blocks at all. You just set/get Firebase values using cloud variable blocks. You can see some examples of that here:

I donā€™t use the RealtimeDB blocks, I just use the variable blocks with Firebase.

1 Like

Thank you so much, and i really appreciate your time. I have been looking through all that this morning and starting to make sense to me. Just one last question if you dont mind. When i save data to firebase using cloud variable, will that save to the database linked to the app or will it save to an individual database linked to the whichever user has signed in to the app. Sorry if that is stupid question!

The way Firebase works is that data is stored in key:value pairs as JSON. Beyond that, you can organize it however you like since itā€™s not a row/column formatted database.

To allow each user to store their own data, users will need to authenticate (sign in). See this: Email Sign In by Firebase - Thunkable Docs

Great, thank you! That makes sense. Ive set up a sign in for users for firebase already, so will now look into how i save data for app and on individual user accounts as well, as i need users to share certain data, which i will do on main database and keep some private stuff too. Will play around next couple of days.

1 Like