Skip to content

Conversation

@SrijanPatwa
Copy link
Contributor

PR Description:

Pull Request Checklist

Overview

  • I have read and understood the CONTRIBUTING.md guidelines
  • My pull request has a descriptive title that accurately reflects the changes
  • I've included only files relevant to the changes described in the PR title and description
  • I've created a new branch in my forked repository for this contribution

Code Quality

  • My code is relevant to ServiceNow developers
  • My code snippets expand meaningfully on official ServiceNow documentation (if applicable)
  • I've disclosed use of ES2021 features (if applicable)
  • I've tested my code snippets in a ServiceNow environment (where possible)

Repository Structure Compliance

  • I've placed my code snippet(s) in one of the required top-level categories:
    • Core ServiceNow APIs/
    • Server-Side Components/
    • Client-Side Components/
    • Modern Development/
    • Integration/
    • Specialized Areas/
  • I've used appropriate sub-categories within the top-level categories
  • Each code snippet has its own folder with a descriptive name

Documentation

  • I've included a README.md file for each code snippet
  • The README.md includes:
    • Description of the code snippet functionality
    • Usage instructions or examples
    • Any prerequisites or dependencies
    • (Optional) Screenshots or diagrams if helpful

Restrictions

  • My PR does not include XML exports of ServiceNow records
  • My PR does not contain sensitive information (passwords, API keys, tokens)
  • My PR does not include changes that fall outside the described scope

This onAfter business rule script checks for the inactivated user and then disables the notification devices and Notification subscriptions of that particular user.

This help us to keep the data aligned, prevent any unnecessary notifications or triggers and enhances security.
This onAfter business rule script checks for the inactivated user and then disables the notification devices and Notification 
subscriptions of that particular user.

This help us to keep the data aligned, prevent any unnecessary notifications or triggers and enhances data management. It will
also eliminate the manual efforts.
@WillemZeiler WillemZeiler self-assigned this Oct 3, 2025

var notifDevice = new GlideRecord('cmn_notif_device');
notifDevice.addQuery('user', currentUserId);
notifDevice.addQuery('active', true);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


var notifSubs = new GlideRecord('sys_notif_subscription');
notifSubs.addQuery('user', currentUserId);
notifSubs.addQuery('active', true);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

notifDevice.addQuery('user', currentUserId);
notifDevice.addQuery('active', true);
notifDevice.query();
while (notifDevice.next()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you expecting multiple results? If you only expect one record, it is more efficient to fetch that 1 record.

notifSubs.addQuery('user', currentUserId);
notifSubs.addQuery('active', true);
notifSubs.query();
while (notifSubs.next()) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you expecting multiple results? If you only expect one record, it is more efficient to fetch that 1 record.

This onAfter business rule script checks for the inactivated user and then disables the notification devices and Notification
subscriptions of that particular user.

This help us to keep the data aligned, prevent any unnecessary notifications or triggers and enhances data management. It will
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Notifications will not trigger for inactive users.
Can you think of other benefits that this script might help accomplish?

@WillemZeiler
Copy link
Contributor

Thank you for your submission. I have added comments to the code. In general, it will be helpful to describe better why you think this script is beneficial. Did you encounter an issue at in an instance that this business rule now solves?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants