- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 06:38 AM
Hi All,
we want to display info message on change request, if any approver is Inactive in system.
Approvals were triggered at Authorize and review state and waiting for multiple group approvals.
my requirement is: if any approver is Inactive during the approval process, when ever change request is open, need to display message on the top of the form.
Thanks,
Sateesh
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 02:52 PM
// This script runs when the change request form is loaded
addLoadEvent(function() {
// Get the current change request's sys_id
var changeRequestSysId = g_form.getUniqueValue();
// Query the sysapproval_approver table for related approvals
var approvalGr = new GlideRecord('sysapproval_approver');
approvalGr.addQuery('sysapproval', changeRequestSysId);
approvalGr.query();
// Check each approval for inactive approvers
while (approvalGr.next()) {
var approverId = approvalGr.approver;
var approverGr = new GlideRecord('sys_user');
if (approverGr.get(approverId) && approverGr.active == false) {
// If an inactive approver is found, display an info message
g_form.addInfoMessage('One or more approvers are inactive. Please update the approvers.');
break; // Exit the loop after finding the first inactive approver
}
}
});
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 07:03 AM
I recommend creating a Client Script that checks the status of the approvers when the form is loaded.... Let know if you need more details...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 07:34 AM
Hi alvinbm1,
if you can provide the sample code, that would be very helpful.
Thanks,
Sateesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 02:52 PM
// This script runs when the change request form is loaded
addLoadEvent(function() {
// Get the current change request's sys_id
var changeRequestSysId = g_form.getUniqueValue();
// Query the sysapproval_approver table for related approvals
var approvalGr = new GlideRecord('sysapproval_approver');
approvalGr.addQuery('sysapproval', changeRequestSysId);
approvalGr.query();
// Check each approval for inactive approvers
while (approvalGr.next()) {
var approverId = approvalGr.approver;
var approverGr = new GlideRecord('sys_user');
if (approverGr.get(approverId) && approverGr.active == false) {
// If an inactive approver is found, display an info message
g_form.addInfoMessage('One or more approvers are inactive. Please update the approvers.');
break; // Exit the loop after finding the first inactive approver
}
}
});
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎11-07-2023 08:43 PM
Thanks for your help, it is working