Local changes have not been synced. Proceed anyway? error

I keep getting this weird error, which results in what appears to be my app crashing. It happens when:

  1. I add a new "transaction" in my app (a new row in table 1)
  2. That kicks off a grouped action with a few actions that update rows in other tables
  3. It also triggers a bot that sends a notification

Neither answer "yes" nor "no" to the question results in what you'd expect (return to the main view), but when I refresh the page the new row is there. Why does my app crash at this point?

Screenshot 2024-05-02 at 6.16.44โ€ฏPM.pngScreenshot 2024-05-02 at 6.16.47โ€ฏPM.png

Screenshot 2024-05-02 at 6.16.39โ€ฏPM.png

โ€ƒโ€ƒโ€ƒ

Solved Solved
0 8 119
1 ACCEPTED SOLUTION


@_pete_ wrote:

do you mean calling a webhook in the bot


I'm not sure where the webhook would fit here.. I just meant that whatever actions you already have you can make them executed by the bot. For instance, in the same bot you are using to send the notification, you can add prior steps with "Run Data Actions". In this way, the actions will be executed by the server on the database in the cloud, then synched with users' devices afterwards. 

On the other hand, when you execute Form-Saved actions or through action buttons, these actions will be run locally by the user's device, then synched with the server, then with other users. Their completion will depend on the sanity of the device, app/browser and its internet connection. 

 

View solution in original post

8 REPLIES 8

With mobile users, try to avoid local actions especially long ones. You'd be better off offloading your actions to the server through your bot. 

Gotcha. By that do you mean that I should have the bot execute the actions? Going to look into that now...thanks for the tip!

By "offloading your actions to the server through your bot", do you mean calling a webhook in the bot, like what's described in the documentation here?: https://support.google.com/appsheet/answer/10104497?hl=en&ref_topic=10105767&sjid=150419138352841070...

Or is there an easier way?

 


@_pete_ wrote:

I should have the bot execute the actions?


Exactly!

 


@_pete_ wrote:

do you mean calling a webhook in the bot


I'm not sure where the webhook would fit here.. I just meant that whatever actions you already have you can make them executed by the bot. For instance, in the same bot you are using to send the notification, you can add prior steps with "Run Data Actions". In this way, the actions will be executed by the server on the database in the cloud, then synched with users' devices afterwards. 

On the other hand, when you execute Form-Saved actions or through action buttons, these actions will be run locally by the user's device, then synched with the server, then with other users. Their completion will depend on the sanity of the device, app/browser and its internet connection. 

 

@Joseph_Seddik, thanks so much for the help! I was able to create two bots, and the second one adds a new row to another table if it doesn't already contain the thing I'm trying to add. In the Options I turned on Trigger other bots so that both bots run when a new record is added. That seemed like the only way to add an expression to say "only add this field to table 2 if it doesn't already exist".

Actually you can also have a branching condition or more in the same bot. The condition would be to check whether there is an existing row containing the same data. 

Another way, is just to include the condition in the behavior of the action itself, so even if you call the action it would not run unless the condition is fulfilled. This would be useful in case the action is used outside the bot. 

Wow, that's even better, and it was not difficult to figure out using the documentation. Thanks for the tip about conditional branching!

Top Labels in this Space