Update to record via list view is not triggering business rule

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-22-2025 11:44 PM
Hi. I've got a business rule that updates a field on demand records whenever an index field is updated/recalculated. This works fine when updating the index field manually within a record, or within a list view on the demand table, but when I 're-rank' demands using a 'Rank' UI Action, the business rule is not triggered.
The 'Rank' UI Action pops up a dialog window with the list of demands which can be dragged and dropped into a new order of priority. This order is maintained by the index field which is automatically updated/recalculated whenever a demand is dragged into a new position. Does anyone know how to get a business rule to trigger from this condition? I have disabled all conditions within the business rule for testing purposes, and it still works fine when updating records manually, but it still doesn't update when ranking demands in this dialog window.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-22-2025 11:57 PM
if you are updating the record and business rule is configured with correct condition then it should work from pop up page as well where you are updating the record.
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-23-2025 12:27 AM
Thanks @Ankur Bawiskar, I thought that was the case. I suspected the conditions were incorrect so removed them all for testing purposes, but the issue still exists - the business rule is triggered correctly when updating the index field manually, but refuses to trigger when ranking demands using the pop up page.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-23-2025 01:47 AM
how is that business rule configured?
how is the popup rendered?
how is the update happening on that popup?
If my response helped please mark it correct and close the thread so that it benefits future readers.
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎06-23-2025 03:44 PM
Hi Ankur. Here's the config on the business rule
It just calls a script include which updates a field called u_demand_ranking with the number the demand sits in the order based on the portfolio index field. The business requirement is to have demands that are within a specific portfolio/domain be ranked so that the business can easily identify which demands are ranked #1, #2, #3 etc for each portfolio/domain. Here's an example of how it looks when the portfolio index field of a demand is manually updated - The business rule runs which calls the script include that changes the portfolio ranking value based on where the demand sits when ordered by portfolio index.
The problem arises when I attempt to rank the demands using the 'Rank' UI action on the demands related list on the pm_portfolio table. Clicking the Rank UI action opens a dialog window which allows the demands to be clicked and dragged to reorder the ranking. Here's the code which is run from clicking the UI action which pops up the dialog window.
function openSortingDialog_bf134fbf971656500d08bb56f053af81() {
var contextId = g_list.getSubmitValue('sysparm_collectionID');
contextId = 'pm_portfolio,sys_id,' + contextId;
ListSortWindow.getInstance().openSortWindowWithParams('Rank', contextId, 'portfolio', 'pm_portfolio', 'dmn_demand', 'portfolio_index', 'visible_columns=,extra_conditions=', g_list);
}
I didn't create this UI action and unfortunately can't find a UI page/macro/script etc that is controlling the dialog window so can't comment on how this part works. There doesn't seem to be any doco from ServiceNow on ListSortWindow or g_list.getSubmitValue, although there is some information on g_list itself.
When a demand is reranked using this method, the portfolio index is automatically updated. My expectation is that the business rule would then detect a change and run, changing the value of the portfolio ranking field if necessary like it does when I manually change the portfolio index field, but the business rule doesn't run at all.
The outcome of this is the demands will display the correct order when sorting by portfolio index, but the portfolio ranking field hasn't been updated so isn't reflecting the change.