with() declarations refresh on any user action regardless of connection

Hello:

I have noticed that anything declared in a with will get refreshed on any action the user takes on an interface, even if the with is unrelated to the action (such as a summary section at the top of the screen and a comments text box at the bottom, with no connection between the two).

Is this expected behavior for Appian?

It seems like with declared variables/rules/components should only refresh if one of the input variables changes.

If you see in the attached interface, changing the value in the textbox is refreshing the with variable, even though they are not related.

OriginalPostID-251823


example_interface.txt

  Discussion posts and replies are publicly visible

Parents
  • @marky To the best of my knowledge, a connection isn't required and the code present in with() evaluates for each and every user interaction (with a component that has saveInto, that is, editable) carried out anywhere in the entire interface. This is the expected behavior (and in fact the architecture) of SAIL.

    If you can pick up an example from the documentation at https://forum.appian.com/suite/help/16.3/SAIL_Design.html#saving-input-into-variables under the section named 'with() and load()' you can observe that the variable named 'local!withVariable' refreshes upon interaction with 3rd and 4th(textField and button) components as they have 'saveInto'(or are editable).
Reply
  • @marky To the best of my knowledge, a connection isn't required and the code present in with() evaluates for each and every user interaction (with a component that has saveInto, that is, editable) carried out anywhere in the entire interface. This is the expected behavior (and in fact the architecture) of SAIL.

    If you can pick up an example from the documentation at https://forum.appian.com/suite/help/16.3/SAIL_Design.html#saving-input-into-variables under the section named 'with() and load()' you can observe that the variable named 'local!withVariable' refreshes upon interaction with 3rd and 4th(textField and button) components as they have 'saveInto'(or are editable).
Children
No Data