Hello folks,
I would like to understand the Start Process SS behavior. From my understanding, we no longer need to perform chaining inside a child process if the child process is configured as a Synchronous Start Process.
Below is the configuration I applied for one of my record-related actions.
Here once action is completed we re query the audit data in the interface which is set in refresh variable and refresh after "RECORD_ACTION". But this is not working as expected. I have to refresh the entire screen to get latest audit data. But if i put chaining between start process(Write audit) and end node, page is refreshing as expected and getting latest audit data.Please let me know if it is expected behavior. Thanks in advance
Discussion posts and replies are publicly visible
Yes this is expected behaviour. Chaining maintains the execution of each node one after another and returns back to the start form with data available till the node chaining is configured. In scenario 1, when you dont have chained till start process then process executes in backend without passing any context data to start form back. In scenario 2, when you do have it chained till start process then process executes keeping the start form active - so that user's action completion happens after then node when chaining is complete. So the process holds the user form, waits till sub process is complete and returns the data back in main process and then lastly action is complete and user sees UI will latest data.
Process being synchronous/non-synchronous doesn't not relate to the above mentioned behaviour. To understand simply, the sync/no-sync allows system to run process in serial/parallel for optimal performance in same/different engines. Its used mainly to improve processing performance and break big processes into smaller ones depending on their dependency on one - another.
If the need is for user to wait for some data to be updated/refresh the data on after action then activity chaining is needed with synchronous sub process.
Thanks Harsha Sharma .So you meant to say, along with configuration I did in above image, we need to chain all nodes in subprocess to get latest audit data. Initially i did that way and it was working fine, but randomly(1 in 20attempts) am getting below popup error when we chain child processIn one thread(Appian Community) I read that chaining is not relevant in the case of a Synchronous Start Process. Based on that, I removed chaining from the child process, assuming that the error I encountered was caused by chaining.
Giving more context to above errorChaining is done for child process and once user click on submit button in related action form, they will get the error popup. If we click ok and refresh the page, the page will be refreshed with latest data.In monitoring i could see that the process is paused at start process node(even though the child process is already completed). Also noticed that after 1 hour the node will be resumed and completed
Harsha Sharma That is almost correct, but not fully. In fact, the issue you are running into Vaishal seems to be a bug we found yesterday. All you should need to do is chain the flow after the Start Process node, and it should work (you do not need to chain anything in the child process, just run it synchronously from the parent).
Yes this one i tried and its working. Thanks James Lepone
Also can you let us know which info is wrong here which Harsha listed
The best way to review how SPSS interacts with activity chained flows is here: https://docs.appian.com/suite/help/25.1/Start_Process_Smart_Service.html#using-activity-chaining
This part of her response seems incorrect to me: "If the need is for user to wait for some data to be updated/refresh the data on after action then activity chaining is needed with synchronous sub process."
You can use SPSS for this (you do not need to use subprocess node), you just need to chain to it and run it synchronously, as with your original post. Your original post is the "correct" design, we just need to fix this bug that requires the following flow to also be chained.