Hi,
I have an interface which is using a refresh variable and a record action field which will only work with expression snippets as show below (I purposely didn't past entire interface definition as it has many nested interfaces and just wanted to focus on my outcome).
local!intakerequest: a!refreshVariable( value: rule!DCI_GetIntakeRequestById(intakeRequestId: ri!intakeRequestId),refreshAfter:"RECORD_ACTION" ),
a!recordActionField( actions: { a!recordActionItem( action: 'recordType!{e19760c9-8977-46f1-bf08-97b73c278803}DCI_DocUnderstanding.actions.{4f1ebdde-3588-4309-a45b-4e838a3c15c0}reIndex', identifier: ri!selectedCard.understandingId ) }, style: "TOOLBAR", display: "LABEL_AND_ICON", openactionsin: "SAME_TAB", align: "END" )
The process model triggered the the related action updates the intake request CDT reference by local!intakerequest variable and then nested interfaces re-render correctly according to new state.
However if I change the openactionsin value to "DIALOG" the refresh variable does not refresh or the nested interface objects are not being re-evaluated with the new state.
If anyone can explain why the "DIALOG" value changes the behavior it would be greatly appreciated. Im missing something in my understanding of interface life cycle and refresh variables which I want to correct.
Thanks.
Discussion posts and replies are publicly visible
Hi Robert,
The documentation has some insight on that in the Notes section:
Looks like the trigger for a refresh is not fired in this situation as the page state is retained.
Here a link to the documentation for further information:
https://docs.appian.com/suite/help/20.3/Record_Action_Component.html
Hope that helps.
Best,
Kai
Hi Kais,
I pointed me in the correct direction thanks so much. The topic "
ln this document ink https://docs.appian.com/suite/help/20.3/Local_Variables.html#configuring-refresh-behavior explained the behavior I was seeing. The dependent rule definition DCI_GetIntakeRequestById for my refreshAfter RECORD_ACTION variable had a local variable expression which was not setup for refresh always.
Once I did that the appropriate interface sections dependent on local!intakerequestid are not getting updated when using openactionin "DIALOG"..
local!intakerequest: a!refreshVariable(value: rule!DCI_GetIntakeRequestById(intakeRequestId: ri!intakeRequestId),refreshAfter:"RECORD_ACTION"),