Rollback in Client Action
Question
Application Type
Reactive
Service Studio Version
11.11.8 (Build 45665)

Hi,

I have one use case on screen I have submit button which call screen client action say "SubmitOnClick".

In this client action I am validating the inputs fields of the form and calling Save Server action which will save the data in Entity. After saving the data there are also other activity I need to do like changing status of form in status entity and then sending the emails to respective users. Since as we know that at client action we can call only one server action. Hence, All the logic i need to execute it in different server actions (Save, ChangeStatus, EmailSend) which is called in one sever action.

Since save server action is saved data Successfully then after any of the server action  "ChangeStatus" or "EmailSend" action took much more time than anticipated and it gives me timeout error and when I again click on Submit (Without Refreshing the page) duplicate records were added in the Entity.

How to resolve this issue.

thanks..... 

Hi Rohan,


It seems that Save, ChangeStatus, EmailSend are atomic, at least Save, ChangeStatus are, and by that reason you should wrap it in a single server action in order to have one transaction on the server side. That way if something goes wrong you can abort it and if all goes well you have one atomic transaction.

Regarding Email send if it is "mandatory", than it should be included in the same wrapper.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.