Button Only Performs Some Actions

This seems to be a consistent issue across all buttons when the app starts running a little slow. Multiple buttons on my app are programmed to perform an action and then navigate to a tab. Except they frequently will skip the first step of the action and go right to the navigation. This is a big problem that is recurring in lots of places. Is there a way to ensure that a multi-step action waits to perform each step before moving on to the next step?

Can you specify which actions are not running?

2 Likes

Sure. So it is happening in various situations, but most commonly I have a button performing three actions. A set column or add row, then another set column, and then go to tab. It keeps taking users to the tab without first setting the columns or adding the row.

1 Like

If I can give some advice to avoid this type of problem (in addition to what @ThinhDinh will dfinitively give you) I am used to thinking as if the actions were all carried out at the same time.
Could there be anything at the data structure level that you can modify to ensure parallel processing, such as creating data in advance before it is used in deep of the action logic?

1 Like

Do the first and second actions set values in different Sheets? Have you ever tried reversing the order of those two?

1 Like

I have tried reversing the order and the problem still exists. And yes they do set the value of a different sheet. The issue appears more systemic than that though. The buttons appears to be timing out and ignoring steps without giving any form of error or notification.

Thanks for the reply Roldy. I guess I’m a little confused by your comment though. This is not even a logic-specific action. Why would a button perform properly sometimes and then that same exact button skip steps when an app is running slowly? It needs to just buffer and wait a little longer instead of skipping things.

I try to explain better because me too I’ve had this kind of problems (and sorry for my bad english).
The question is:
what kind of dependency exists between the first step and the second step of your action? There is a reason why you need to wait trough the execution of the first step before the second or not?
If there is no type of dependence between one step and the next then the problem does not depend on the hypothesis I made, otherwise it probably depends on it.

1 Like

In some cases there is dependency on the first step, but not in other cases of the app which are performing the exact same way. So I don’t think that is the issue.

1 Like

Ok, I’m still thinking about this problem.
Another question just to investigate …: do you have an IF inside the button action?

One more question, when it doesn’t run as expected, are both set columns not performing or is it only one of those two? And if it’s only one is it the first or the second?

I have seen posts a while ago about set columns not performing as intended when you have consecutive set columns/add rows actions pointing to different tables. The term was the pointer is lost as it interacts with many tables at once.

After a lot more experimenting, I have found that you are definitely correct in it being a matter of a lost pointer. How can this be solved though? I do still need to set these columns and there really isn’t any easy way to modify the sheets to be in the same tab. Do I need to report this as a bug?

I’m not aware of any workarounds. Please submit a ticket here.

https://glide-help.zendesk.com/hc/en-us/requests/new