<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.appian.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>How to refresh interface on navigation change</title><link>https://community.appian.com/discussions/f/general/20656/how-to-refresh-interface-on-navigation-change</link><description>Hi All, 
 I am using the Navigation pattern in my interface. 
 I am having different tabs on the left navigation. I am referring to separate interfaces for each tab. 
 So now when i am moving between the tabs, the content is not refreshing. (When I am</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/85634?ContentTypeID=1</link><pubDate>Thu, 09 Sep 2021 18:02:21 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:3a451e4a-2075-4925-a3f1-cd3efde46757</guid><dc:creator>Ravi Roshan</dc:creator><description>&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;a!localVariables(
  /* The selected navigation section */
  local!activeNavSection: 1,
  /* The navigation sections */
  local!navSections: {
    a!map(name: &amp;quot;Workspace&amp;quot;, icon: &amp;quot;briefcase&amp;quot;),
    a!map(name: &amp;quot;Tasks&amp;quot;,     icon: &amp;quot;tasks&amp;quot;),
    a!map(name: &amp;quot;Requests&amp;quot;,  icon: &amp;quot;paper-plane&amp;quot;),
    a!map(name: &amp;quot;Calendar&amp;quot;,  icon: &amp;quot;calendar&amp;quot;),
    a!map(name: &amp;quot;My Time&amp;quot;,   icon: &amp;quot;clock-o&amp;quot;),
    a!map(name: &amp;quot;Expenses&amp;quot;,  icon: &amp;quot;money&amp;quot;)
  },
  /*Variable declaration for each nav section*/
  local!TasksDD,
  local!TasksTF,
  local!workspaceDD: a!refreshVariable(
    value: null,
    refreshOnVarChange: {local!TasksDD,local!TasksTF}
  ),
  local!workspaceTF: a!refreshVariable(
    value: null,
    refreshOnVarChange: {local!TasksDD,local!TasksTF}
  ), 
  {
    a!columnsLayout(
      columns: {
        a!columnLayout(
          contents: {
            a!forEach(
              items: local!navSections,
              expression: a!cardLayout(
                contents: a!sideBySideLayout(
                  items: {
                    a!sideBySideItem(
                      item: a!richTextDisplayField(
                        labelPosition: &amp;quot;COLLAPSED&amp;quot;,
                        value: a!richTextIcon(
                          icon: fv!item.icon,
                          color: &amp;quot;SECONDARY&amp;quot;,
                          size: &amp;quot;MEDIUM&amp;quot;
                        ),
                        align: &amp;quot;LEFT&amp;quot;
                      ),
                      width: &amp;quot;MINIMIZE&amp;quot;
                    ),
                    a!sideBySideItem(
                      item: a!richTextDisplayField(
                        labelPosition: &amp;quot;COLLAPSED&amp;quot;,
                        value: a!richTextItem(
                          text: fv!item.name,
                          color: &amp;quot;ACCENT&amp;quot;,
                          size: &amp;quot;MEDIUM&amp;quot;,
                          style: if(
                            fv!index = local!activeNavSection,
                            &amp;quot;STRONG&amp;quot;,
                            &amp;quot;PLAIN&amp;quot;
                          )
                        )
                      )
                    )
                  },
                  alignVertical: &amp;quot;MIDDLE&amp;quot;
                ),
                link: a!dynamicLink(
                  value: fv!index,
                  saveInto: local!activeNavSection
                ),
                style: if(
                  fv!index = local!activeNavSection,
                  &amp;quot;ACCENT&amp;quot;,
                  &amp;quot;NONE&amp;quot;
                ),
                showBorder: false,
                accessibilityText: if(
                  fv!index = local!activeNavSection,
                  fv!item.name &amp;amp; &amp;quot; &amp;quot; &amp;amp; &amp;quot;selected&amp;quot;,
                  &amp;quot;&amp;quot;
                )
              )
            ),
            /* This card is used to set a minimum height on the column so that the *
               * divider takes up more screen space when there is minimal content.   *
               * Once content is added to the main column, this can be removed.      */
            a!cardLayout(
              height: &amp;quot;TALL&amp;quot;,
              showWhen: not(a!isPageWidth(&amp;quot;PHONE&amp;quot;)),
              showBorder: false
            )
          },
          width: &amp;quot;NARROW&amp;quot;
        ),
        a!columnLayout(
          contents: {
            /* Conditionally display selected navigation section.       *
               * Sections are created individually here because they will *
               * have varying contents, so if you change the list in      *
               * local!navSections, you will need to make sure            *
               * the list of sections here is the correct length.         */
            choose(
              local!activeNavSection,
              {
                rule!Test_IF_SubRule(
                  dropdownVal: local!workspaceDD, 
                  textVal:local!workspaceTF
                )
              },
              {
                rule!Test_IF_SubRule(
                  dropdownVal: local!TasksDD, 
                  textVal:local!TasksTF
                )
              },
              /*rule!testPage1(),
              rule!testPage2(),*/
              a!sectionLayout(
                label: index(
                  local!navSections.name,
                  local!activeNavSection,
                  &amp;quot;&amp;quot;
                ),
                contents: {}
              ),
              a!sectionLayout(
                label: index(
                  local!navSections.name,
                  local!activeNavSection,
                  &amp;quot;&amp;quot;
                ),
                contents: {}
              ),
              a!sectionLayout(
                label: index(
                  local!navSections.name,
                  local!activeNavSection,
                  &amp;quot;&amp;quot;
                ),
                contents: {}
              ),
              a!sectionLayout(
                label: index(
                  local!navSections.name,
                  local!activeNavSection,
                  &amp;quot;&amp;quot;
                ),
                contents: {}
              )
            )
          }
        )
      },
      spacing: &amp;quot;SPARSE&amp;quot;,
      showDividers: true
    )
  }
)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Please check variable declaration from line 14 to 23 and line number 101 to 111&amp;nbsp;where I have called the sub rule. Below is the sub rule code&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;a!localVariables(
  local!arrayValue: { &amp;quot;x&amp;quot;, &amp;quot;y&amp;quot;, &amp;quot;z&amp;quot; },
  {
    a!dropdownField(
      label: &amp;quot;Select a value&amp;quot;,
      choiceLabels: local!arrayValue,
      choiceValues: local!arrayValue,
      value: ri!dropdownVal,
      saveInto: ri!dropdownVal,
      placeholder: &amp;quot;Please select&amp;quot;
    ),
    a!textField(
      label: &amp;quot;&amp;quot;,
      value: ri!textVal,
      saveInto: ri!textVal
    )
  }
)&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;I have given example for workspace navigation, try it out. Hope this help.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/85633?ContentTypeID=1</link><pubDate>Thu, 09 Sep 2021 16:49:49 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:d06c06b6-2bf4-4897-8733-8d6ec5bd3dd6</guid><dc:creator>Zach Goldsby</dc:creator><description>&lt;p&gt;Had to move refresh variable to parent interface rule and pass to child interface&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/85632?ContentTypeID=1</link><pubDate>Thu, 09 Sep 2021 16:37:01 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:8457bb4b-acb7-4834-bdc9-10c66f703354</guid><dc:creator>Zach Goldsby</dc:creator><description>&lt;p&gt;Is there any way to implement this design using child interface rules for each section? This seems cleaner but doesn&amp;#39;t pass the newly refreshed value to the child section rule because the child is only called when the active section equals the chosen index. Choose()&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/80508?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 14:56:08 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:dbae9fd6-59d5-43aa-ab34-f0510fa7a89f</guid><dc:creator>Danny Verb</dc:creator><description>&lt;p&gt;I recommend using the function a!refreshVariable() within each of your sections. This is great for resetting the initial value of a variable when another variable changes, in your case the variable which changes would be local!activeNavSection. For example, lets say you have a variable for your workspace dropdown. You should set that variable to:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="java"&gt;a!localVariables(
    local!activeNavSection: 1,
    local!selectedWorkspaceDropdown: a!refreshVariable(
        value: null,
        refreshOnVarChange: {local!activeNavSection}
    ),
    {}
)&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/80505?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 10:59:04 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:2e03e4ec-c8c2-41a0-b1ba-370b69b53cd7</guid><dc:creator>Ram</dc:creator><description>&lt;p&gt;We have a admin screen with different tabs to display different contents and few actions need to be performed in those tabs.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/80504?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 10:55:04 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:317d33ba-9b07-4b69-9857-9435f7b6c0b0</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;This is not how this works. If you want to reset already filled fields, you need to implement it. Means: add some a!save() into the saveInto in dynamicLinks in your tabs.&lt;/p&gt;
&lt;p&gt;Is this just some tests? What do you want to achieve?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/80503?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 10:50:20 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:6e677733-54d2-49b0-b551-0c9f4a74ca3e</guid><dc:creator>Ram</dc:creator><description>&lt;p&gt;Hi &lt;/p&gt;
&lt;p&gt;Attached screenshots.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to refresh interface on navigation change</title><link>https://community.appian.com/thread/80502?ContentTypeID=1</link><pubDate>Thu, 25 Mar 2021 10:11:35 GMT</pubDate><guid isPermaLink="false">d3a83456-d57b-489c-a84c-4e8267bb592a:92a6795a-77bd-4c4f-a185-afd1d9d67e3b</guid><dc:creator>Stefan Helzle</dc:creator><description>&lt;p&gt;What exactly should update? Can you provide some screenshots with as-is and to-be?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>