Feature request: a!sectionLink

This post is regarding a feature request I want to make. The feature is about being able to click on a hyperlink and able to navigate to that section on the same screen. Like how we have on websites where clicking on something scrolls the page and takes the user to a certain section. Similarly, something like a!sectionLink that takes the section label or some identifier as input and takes the user to that section on the same page. 

This would be helpful when there are dense interfaces or long interfaces having a lot of scrolls. And as portals come into the picture, this can also be very well used on Appian portals as they are expected to have long scrolls. 

  Discussion posts and replies are publicly visible

Parents
  • It's an interesting thought - do you think this is something that is more common because of the release of Portals? I say this because most of the time I see this kind of paradigm, it's on a read-only page, and historically forms are much more common that read-only pages within Appian. Or is there an example you're thinking of with a long form where you'd rather have this navigation paradigm than a wizard?

  • One example I could see using this is for Record Summary interfaces.  Often there, I'll have one longer read-only page of all data entered in the request, approval history, related employee information, etc.  Sort of the single place for all with access to review anything and everything that occurred with the request, which can get long.  As we don't want to 'wizard' them through a review, only scroll, to be able to create sort of a table of contents with bookmarks/anchor links at the top would be nifty. 

    On a related note, this reminds me of a feature request (that I'm not sure has been submitted?), where we could dynamically collapse/open section layouts on an interface.  It is not possible now, but could solve a similar use case in a different way, with dynamic links that open/close sections on the form below.  Would also be nice!  Then we could avoid the scroll, scroll, collapse, scroll, scroll, collapse, scroll, finally arrive at your section.

    a!localVariables(
      local!sectionCollapsed: false,
    
      {
        a!linkField(
          links: a!dynamicLink(
            label: concat(if(local!sectionCollapsed,"Show","Hide")," the section below"),
            value: not(local!sectionCollapsed),
            saveInto: local!sectionCollapsed
          )
        ),
        a!sectionLayout(
          label: "This is a Section",
          isCollapsible: true,
          isInitiallyCollapsed: local!sectionCollapsed /* Does not work dynamically :( */
        )
      }
    )

Reply
  • One example I could see using this is for Record Summary interfaces.  Often there, I'll have one longer read-only page of all data entered in the request, approval history, related employee information, etc.  Sort of the single place for all with access to review anything and everything that occurred with the request, which can get long.  As we don't want to 'wizard' them through a review, only scroll, to be able to create sort of a table of contents with bookmarks/anchor links at the top would be nifty. 

    On a related note, this reminds me of a feature request (that I'm not sure has been submitted?), where we could dynamically collapse/open section layouts on an interface.  It is not possible now, but could solve a similar use case in a different way, with dynamic links that open/close sections on the form below.  Would also be nice!  Then we could avoid the scroll, scroll, collapse, scroll, scroll, collapse, scroll, finally arrive at your section.

    a!localVariables(
      local!sectionCollapsed: false,
    
      {
        a!linkField(
          links: a!dynamicLink(
            label: concat(if(local!sectionCollapsed,"Show","Hide")," the section below"),
            value: not(local!sectionCollapsed),
            saveInto: local!sectionCollapsed
          )
        ),
        a!sectionLayout(
          label: "This is a Section",
          isCollapsible: true,
          isInitiallyCollapsed: local!sectionCollapsed /* Does not work dynamically :( */
        )
      }
    )

Children