Hi
I am trying to refresh my Data stored in the expression. There is link which stores true, false in local!refreshBool and I want to refresh the data based on that. This expression rule pulls data from Integration.
But the Data is not getting refreshed. When I TEST interface the data is refreshed but not when I click on link
local!data: rule!TA_getAndFormatRandomUser(), local!refreshBool, local!refreshData: a!refreshVariable( value: local!data, refreshOnReferencedVarChange: local!refreshBool ),
Discussion posts and replies are publicly visible
That's a weird construct. Why do you expect refreshData to change, when local!data stays the same. You have to add the refreshVariable to local !data.
Thanks for the response Stefan. have tried with local!data as well but it's not refreshing
a!localVariables( local!refreshBool, local!data: a!refreshVariable( value: rule!TA_getAndFormatRandomUser(), refreshOnVarChange: local!refreshBool ),
What is inside your expression rule?
Hi Mike, in the expression rule I have formatted the Integration response. I have a dynamic link which store true/false value in the local!refreshBool, I want to refresh the integration response when clicked on the dynamic link
In case you use local variables inside that expression rule, you need to add a refreshVariable with refreshAlways set to true. Else Appian will use the cached value.
I have used local variables to format Data from Integration response. So what should be my appraoch to refresh data by button click on the Interface
This is my expression rule where I am formatting the Data to use in the Interface
Interface
In that expression, add a refresh configuration to local!allData. Either set refreshallways=true or use that boolean.
kumark4975 said:in the expression rule I have formatted the Integration response.
I'd actually need to see the code snipet used in your expression rule (especially the meta-structure of the rule setup; you can redact any sensitive contents if needed).
Is this it? I'll admit I was confused by this thread being attended by 2 different Community accounts, but this looks to be the same rule.
The problem with calling this expression rule on an interface, is the value "local!allData" will NEVER REFRESH on its own, because it's being defined in the expression rule's own "a!localVariables()" call, and within the context of a single interface, and a single local variable declaration in the parent interface, the value will load the first time (upon initialization of the form) then persist. Doing a force refresh on the variable declaration in the parent form won't effect the value already loaded into the local variable in the expression rule, unless you pass a refresh variable into the expression rule itself and add it to the declaration of local!allData.