I decided to create an article on this due to the topic coming up on the community and the sndevs slack. I haven't really seen a comprehensive walkthrough of how to manage lists on Now Experience Workspaces, which are a little different than configuring lists on Agent Workspace. I'll provide a run-through on how to do it in Agent Workspace, and then jump into the differences on how to configure the same thing in Now Experience Workspace. I did begin to explore into this in the early days of Now Experience Workspaces in Quebec. I want to expand on that article here and cover most of the list use cases in Now Experience Workspace that I've come across in the community.
For ease of use I've created a table of contents with quick links to the sections below:
Now Experience Workspace
I'll start with Agent Workspace because it's still in use though there is still some confusion around it and Now Experience or Configurable workspaces. As a recap, Agent Workspace (AW) was released around London(ish) and is the precursor to Now Experience Workspaces (NEW 😄) While there is still support for Agent Workspace, users can no longer create new workspaces based on Agent Workspace, instead Now Experience Workspaces have to be created via App Engine Studio or Studio.
I'll expand on that for just one moment. When creating a Now Experience Workspace via App Engine Studio, you not only get the Workspace App Shell, the engine also builds some basic pages for you like home, list, record, etc. that users are used to seeing in Agent Workspace. If you create a Workspace via Studio, you're really just building blank pages with the Workspace App Shell wrapped around it, meaning that none of the list, record, etc. pages are included when you create an experience from Studio as of the Rome release. The UI Builder course on the Developer site has some great visuals on App shells.
Now that I've provided some clarification on Agent Workspace/Now Experience Workspace I'll briefly cover how to create/modify lists in Agent Workspace. The easiest way I've found is to navigate to Workspace Experience (which means Agent Workspace not Now Experience Workspace) > Administration > All Workspaces, and select which Workspace to configure. Under the Workspace record, there is a related list for Workspaces Lists which is the table: sys_aw_list_list.
One thing to note, depending on how you are using Agent Workspace, the scope for a list may be different, i.e. Accounts would be in the CSM Workspace scope, so you'd need to switch over to that scope for any modifications. On the form view for a list in Agent Workspace there's a number of things that can be configured for example: which category the list is under, the roles and groups that the list is available for, and the columns that are visible.
I've described how lists are displayed in Agent Workspace, but there is another type of list you may want to configure which is the Related List on the record page. As a primer, Agent Workspace uses the Workspace view by default, not to be confused with Workspace UIB view which is what Now Experience Workspaces use by default. You can configure new views and create Workspace View Rules to use them instead if you don't want to touch the Workspace view, or need multiple views for different use cases. Configuring the Related List > List Layout in the Workspace view (or your view used with the view rule) will apply the changes within the Workspace UI. In the screenshots below I added the Reassignment count column to the Child Incidents related list.
Agent Workspace does allow us to reorder the lists via Workspace View Rules, without having to reorder them on the Workspace view itself. Let's say we wanted to make Child Incidents the first tab, and we wanted to highlight it when the page loads. On the Form Tabs section of the Workspace View Rule there is the option to uncheck the default tab order, configure the tab order you would like, and select a default tab focus. Note: At this time I don't believe there is current functionality to Omit if empty even via the Workspace view on List Control as of the Rome release.
If you've enabled Global Search in Agent Workspace you may want to configure the columns that return in the list of search results. In order to do configure this, navigate to the list view of the table in the Platform UI, and locate the Text_search view. If you don't have this view available for your table, you can configure it. Per the article linked above, this will impact the Platform UI Global Search as well, and if the view doesn't exist the system will use the Default view to return results, so keep this in mind when configuring this for Agent Workspace.
I created a text_search view on my Incident table and added the Reassignment count and Resolution code columns to the text_search list layout and the changes reflect in both Platform UI and Workspace UI.
Data Visualization Drilldown
The last list I'll mention is the drilldown view for the Data Visualization component in Agent Workspace Landing Pages. I figure the Simple - List component is pretty self-explanatory, as you choose with columns you want to add to the component. There is a large difference in what can be done in Agent Workspace versus Now Experience Workspace, as we have the option to configure events in Now Experience and are pretty limited to what components do in Agent Workspace.
In Agent Workspace the Enable drilldown toggle literally means you can click the Data Visualization and have it show a list view of records or not. From what I've seen it doesn't mean 'use a drilldown view like in reports' even if you use a Report Source that has a drilldown for your Data Visualization. In Agent Workspace the list that is shown when a user clicks a Data Visualization with drilldown enabled is the Default view on the list configured in the Platform UI. It took me quite a minute to figure this out, as I configured the Workspace list view, I checked Workspace lists (thinking it would default to All or whatever list didn't have conditions) and just decided to toy around with Default. I don't think there's a way around this in Agent Workspace as the events are blackboxed. I did find older documentation on the Reporting/PA Widget that was used in Agent Workspace prior to Quebec when it was replaced with Data Visualizations that stated for Single Score reports "Drilldowns navigate to the component workspace list" which confuses me because I couldn't change the Workspace view and have my columns apply. If you know of a workaround please drop a comment below.
Anyways, for now I created a Data Visualization and toggled Enable drilldown and am able to click on the number in Agent Workspace and have the list of filtered records show.
Now Experience Workspace
When you create a Workspace in App Engine Studio, you'll be prompted for the tables you want to use, and AES will generate the basic lists for those tables such as Open, Unassigned, Closed, and All.
In Agent Workspace if you wanted to change columns or conditions for those lists you would just navigate to the module. In UI Builder there is a link to it, so we don't have to navigate to modules in the Platform UI. When clicking on the list component, in the Configuration Panel there are a few links at the bottom such as Configuration, Applicability, and M2M Applicability.
The Configuration link will jump to the UX List Menu Configurations table sys_ux_list_menu_config_list which shows the configs for each Workspace. Clicking on the workspace we're using, in my example Blog Workspace List App_menu_config will bring me to the UX List Menu Config for my workspace. On this form there are two Related Lists, one for UX List Categories sys_ux_list_category and one for UX Lists sys_ux_list, which is very familiar to how we configured lists in Agent Workspace.
On the UX List form a few things can be configured, except for who can view the lists. If you poke around in the List/Form layout you'll see a Roles [DO NOT USE] and Groups [DO NOT USE] column, so I'm guessing we don't use those. In the screenshot below I added Reassignment count to show how the Columns can be configured. One thing to note is the Group by column field which is not an option for Agent Workspace lists.
The Applicability link drops us into the Audiences table sys_ux_applicability_list. Multiple audiences can be defined for a Workspace for example Agent, Manager, or even using ITSM Roles for records such as Problem. In Now Experience Workspace visibility is controlled by Audiences rather than individual roles or groups. This may seem limited at first due to Audiences only being roles, but there is a plugin called UX Framework User Criteria which expands this functionality to Roles, Groups, Users, Companies, Departments, Locations, and allows for Scripts. This plugin allows us to get really granular with visibility, so I recommend you go ahead and enable it when defining Audiences. To enable this plugin at the time of writing this article, an Activate Plugin request will need to be made through Now Support. For this article I created a 'special_blog_role' and assigned it to Abel Tutor who has itil and I set my Workspace Audience users with the itil role.
The M2M Applicability link is where we define which Audience/Applicability can view our Workspace List. I only want users with the 'special_blog_role' to be able to view the 'All' list under the Incident category, which I renamed to 'All - Inc' so I could find it easily for this article.
Now in testing, only Abel Tutor should be able to view that list with the 'special_blog_role' and itil users should not be able to.
Now Experience Workspaces and Agent Workspace are very similar here, in that Related Lists are controlled via the view. In my testing, I tried configuring the Workspace UIB view which is in the CWF Workspace Integrations application scope. I found this view works for form views, but did not take effect on the Related List. Now Experience Workspaces do have their own concept of view rules found in the following modules:
The UXF Form View Rules sysrule_view_workspace table is the same one used in Agent Workspace View Rules. The same configuration applies that I discussed for Agent Workspace above. A view rule will be configured here first, and then will be applied to the Now Experience Workspace via the UXF View Rules Configurations sys_ux_view_rules_configuration table.
In this example I created Workspace Blog view, added my Incident > Parent Incident related list to it, and added the Transfer reason column to the related list, then configured my UXF View Rules.
See the above section for Agent Workspace, on configuring the text_search view. The steps are the same whether you're in Agent or Now Experience Workspace.
Data Visualization Drilldown
As I mentioned before, there are more options for opening up lists when clicking on a Data Visualization when using Now Experience Workspaces. Just like Agent Workspace, the Enable drilldown toggle doesn't do exactly what developers would think, here's the product documentation.
Enable drilldown — For reports with a defined drilldown, enables users to click a visualization value or section and display its data subset. For example, an agent clicks a single score value and is navigated to the underlying list of high priority cases.
I don't see anything here that speaks to drilldown views so to speak. I know most developers are used to defining a view when defining a drilldown on a report, but to me this wording seems to say the user can click a component and drilldown into the pre-defined data subset per the report query. I did some poking into the List component and there is a listView parameter that can be set which enables developers to send the desired view in the event.
I added this to the 'Optional Parameters' of my Simple List page.
Then when setting up the event for my Data Visualization to Link to Destination, I defined the view I wanted to use, for example I created a blog_drilldown view in the platform. I added the columns Reassignment count and Escalation to this view.
When clicking on my visualization I see the link is passing the view I defined and my columns are in the simple list. https://[myinstance].service-now.com/x/422452/bwla/simplelist/incident/params/list-title/Blog%20Resolved/query/state%3D6/list-view/blog_drilldown
There's so much more than can be done with list configuration in Now Experience Workspaces. I didn't really get into depth on the List component parameters themselves, but plan to in a follow up article. This article really came about from personal experience and community questions on how to set up lists in Agent and Now Experience Workspaces, and how to configure list views in each respective workspace. From what I've covered, Agent Workspace is limited in what we can do, especially when it comes to Data Visualization drilldowns, but the configuration via Modules is more that us developers are used to. UI Builder offers quick links to configuration modules by clicking on the component itself, but this may not be as apparent to developers at first. My advice is when configuring Now Experience Workspaces, most configuration will be found in UI Builder rather than navigating to modules in the Platform UI so that is going to be a mindset shift, but there are some things that still have to be configured 'the old fashioned' way, such as adding new record types to the + symbol, etc, which I'm assuming will be moved into UI Builder in future releases.
ServiceNow Developer Blog - UI Builder - List Components Tips and Tricks - This has some great resources on dynamic filtering, refreshing, etc.