how to clear the sys_ID

Chaitanya Chowd
Kilo Expert

Hi All,

Consider the below scenario and help me in solving it

I have created a "List" type field in Incident form and it is referenced to "User" table.

find_real_file.png

I added a user to the "List" type field in Incident form. After that. I deleted the same user in "User" table . Now i am able to see a sys_id in the "List" type field in Incident form.

find_real_file.png

So help me like, if i delete the a user in "User" table, it should also delete its value in the referenced fields("List" type field in Incident form) and it should not display any sys_id.  

1 ACCEPTED SOLUTION

Let's see if this helps,



(function executeRule(current, previous /*null when async*/) {


var userid = current.sys_id;


var useridlist = [];


var inc = new GlideRecord('incident');


inc.addQuery('u_user_list','CONTAINS',userid);


inc.query();


while(inc.next()){


var userlist = inc.getValue('u_user_list');


var users = userlist.split(",");


for(var i =0; i<users.length; i++){


if(userid.toString() != users[i].toString())


useridlist.push(users[i].toString());


}


inc.u_user_list = useridlist;


inc.update();


}


})(current, previous);


View solution in original post

25 REPLIES 25

Thank you very much Shishir. It's working as expected now.


Hi,



Why are you deleting the user record? Why not just deactivate the user.


If you query the incident table like that, you will see performance issue, since incident table will have huge number of records and you are doing a contains query.



Please mark this response as correct or helpful if it assisted you with your question.

Hi sanjiv,



I am facing this issue in a custom table while working for client. I just replicated the issue in incident table in the instance.



Thanks,


Chaitanya.


In which scenario, do you delete the user record?



Please mark this response as correct or helpful if it assisted you with your question.

It's not the user record in actual case. I just replicated the issue with user and incident tables.



In actual case, i am deleting a record and it's value is referenced in glidelist in another table.



sorry for confusion and inconvenience.