Best Practices for UI Builder Page Variants-- Want to minimize need to make multiple changes
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-01-2022 07:05 AM
One of our projects for this year is to create and use better interfaces in our custom applications. My challenge is that each application has different audiences, which will each need slightly different needs in there page. For example, for our Tag and Track application we have the application administration team, then we have the different design team admins who need to report on their particular items, and finally we have the designers who need to be able to view and request items. The majority of the page we want to provide is the same between each group, with only slight variants.
My plan was to create a page variant for each group, and use groups and audiences to control who sees what. I will then use a filter applied to the page to further limit the items available for them to view.
However, in my experience, the teams are going to want changes to that 80% of the page that is available across all variants (as their process changes, or when new features are available in ServiceNow.) I am working my way through the class on UI Builder, and I'm trying to figure out the best way to handle these changes.
What I want to do is to make the fewest number of modifications to reduce work, avoid error, and reduce testing. But I can't figure out any way to do this easily using the UI Builder.
For example, let's say I have a list showing all checked out items. The filters would change the items to "all items" for the applicaiton admin, "all tops" for the Tops Design Admins, and "all my items" for the individual designers.
Let's further suppose that a few months later, they want that to swap between Checked Out and Past Due, so I add a button that further filters that list to only show the appropriate checked out items that are past due.
The only way I've been able to figure this out is to go into each page variant, and repeat the process to add this new feature to each variant.
Am I missing something? Is there a way to have a "base" page, so that any changes to that page are carried to each variant? If not, is there any way to copy the components from one variant page and add them to another?
Any help would be appreciated!

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎05-02-2022 09:01 AM
I don't think you're missing anything, but we are looking at ways to make things more modular and make it easier to use templates, etc. I think, for now, you're probably on the right track.