Configuring Lists in Configurable Workspace
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-17-2024 05:38 PM
As per SN KB -
https://support.servicenow.com/kbid=kb_article_view&sysparm_article=KB0962080
Description
When configuring custom filtered lists (sys_ux_list) entries for CSM Configurable Workspace, the lists are not visible to non-admins. OOB lists are visible to non-admins.
Cause
This can be due to missing sys_ux_applicability_m2m_list entries for the custom lists. The sys_ux_applicability_m2m_list table determines what audience the list applies to.
Resolution
In order to allow other audiences to view the filtered lists in CSM Configurable Workspace, a sys_ux_applicability_m2m_list entry will need to be created for each list/audience combination that should be able to access the list.
These permissions were previously configured on the sys_aw_list table, however, this has since moved to the sys_ux_applicability_m2m_list table.
For more information on migrating lists to the CSM Configurable Workspace, please see:
We need to create list applicability & add the correct audience to that applicability for the custom lists to be visible for non-admin users as well.
Unfortunately, there is no alternative way to achieve this all the lists collectively. You need to do this separately for each of the custom lists.
you can use below script to apply list applicability directly to UX List categories -
// Category sys_ids
var categorySysIds = [
'sysid1', // enter your category sys ids 1
'sysid2', // enter your category sys ids 2
];
// Loop through each category
for (var i = 0; i < categorySysIds.length; i++) {
var categoryId = categorySysIds[i];
// Getting all lists with the current category
var grList = new GlideRecord('sys_ux_list');
grList.addQuery('category', categoryId);
grList.query();
// Loop through each list record
while (grList.next()) {
// Creating a new record in sys_ux_applicability_m2m_list
var newItem = new GlideRecord('sys_ux_applicability_m2m_list');
newItem.initialize();
// Set the applicability and sys_scope fields
newItem.applicability = 'your_sys_id';
newItem.sys_scope = 'your_sys_id';
// Reference the list instead of setting sys_id directly
newItem.list = grList.sys_id;
// Insert the new record
if (!newItem.insert()) {
gs.error('Failed to insert record for list: ' + grList.sys_id + '. Error: ' + newItem.getMessage());
} else {
gs.info('Record inserted successfully for list: ' + grList.sys_id);
}
}
}
// Succes message
gs.info('Created records in sys_ux_applicability_m2m_list');
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-17-2024 11:04 PM
What is the question?
Please mark any helpful or correct solutions as such. That helps others find their solutions.
Mark
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-24-2025 07:47 PM
This was helpful to resolve my issue.