Hi,
I would have a question about a refresh aspect.
I have an interface (let's call it "Form A") displaying many sub interfaces depending on many conditions.
In one of theses sub-interfaces, there is a RecordType grid and for each line I've set a RecordAction (called "Edit row") that triggers a process.
(The user has to make few clicks on different components to see that grid)
When the user clicks on this row RecordAction, it triggers the process which displays a start form Interface (let's call it "Form B").
This "Form B" interface has 2 buttons "Cancel" and "Save" (I've set submit = true for each one). When the user clicks on the Cancel button, the process simply goes to the end node (XOR step decision is used).
If the user clicks on Save, the process store data in DB and end the node.
My question is :
When I click on the cancel button of "Form B", how may I do, to having NO refresh of the "Form A" ?
I need the user to stay on the same grid, same sub-interface of "Form A".
It seems that the Process triggers a refresh of the last Interface displayed.
Discussion posts and replies are publicly visible
Running a process from an interface will always cause that interface to be refreshed. If the process model that is referenced by your Record Action does have an actual Start From configured, then you do not need a 'Cancel' button as the process will not be started until you hit a button that has submit: true configured. Such a form has an 'x' top right which allows it to be closed. This will not refresh your original interface.
Thank youYou're right Stewart, the "X" works perfectly, but I would prefer to use a Cancel button, as I need to display a confirmation message.
If running a process from an interface always causes that interface to be refreshed, that means if the user click on the Save button, he will lost the context of components (components and grid already displayed) of the previous interface.In this case, how to keep that context ?
Like any context, if you want to persist it between interactions you need to....persist it! You can save to local! variables (although that would be lost if you close the interface); or you persist in a database and retrieve it again when you refresh the interface
Yes I was considering to save data in DB, but this seems to be too much effort vs what this functionality is offering...
As I said, you could persist context in a local variable. Save the values you want to save and use them again to load your interface components when the interface is refreshed. With the a!refreshVariable() you also get to decide which variables are refreshed when and under what conditions.
Yes Stewart, before my post, I was already study how to do it with local variable... and I will do it if it does not break too much components ;-)
Thank you