Issue with deleting record from sys_user_grmember table

Lon Landry4
Mega Sage

I have an after business rule that runs on deletion of a record on a custom table.

The results of the gs.log are as expected - the sys_id of the group member record I want to delete.

 

(function executeRule(current, previous /*null when async*/) {
// Add your code here
var groupRecordX = new GlideRecord('sys_user_grmember');
groupRecordX.initialize();
groupRecordX.gmRec = current.sys_id; //get the sys_id of current group member record
gs.log(groupRecordX.gmRec);
var groupRecordXu = groupRecordX.gmRec
gs.log(groupRecordXu)
groupRecordXu.deleteRecord(); //Remove the group member record
return;
})(current, previous);

 

No error messages...

Any ideas?

 

Thanks for your time,

Lon

1 ACCEPTED SOLUTION

Sreedhar Mamill
Giga Expert

var groupRecordX = new GlideRecord('sys_user_grmember');

groupRecordX.addQuery('name','yourGroupName');

groupRecordX .addQuery('user','user_sysId'); // user whom you want to remove.. not sure what do you mean by current user... 

groupRecordX.query();

gs.log('user: '+userSysId.getDisplayValue());

while(groupRecordX.next()){

groupRecordX.deleteRecord();

}

 

try the above code in your BR . you have to change accordingly. 

 

mark my answer as correct if helpful.

 

View solution in original post

5 REPLIES 5

Lon Landry4
Mega Sage

Thanks a million.

The syntax in bold was alluding me, lines 3 & 5

groupRecordX .addQuery('user','user_sysId'); 

gs.log('user: '+userSysId.getDisplayValue());

 

From a ServiceNow perspective, I do not understand why user_sysId works....
I was expecting something like user.sys_id.

I need to look into this syntax, so my overall development skills improve.