script to find out which user criteria is in use
This script identifies the areas in which user criteria is used.
var userCriteriaSysId = '**************************' ; // update user criteria sys Id
var tableList = [];
var referenceList = [];
var grTable = new GlideRecord('sys_dictionary');
grTable.addEncodedQuery('reference=user_criteriainternal_type=reference');
grTable.query();
while(grTable.next()) {
tableList.push(grTable.name + "");
}
for (var k=0; k<tableList.length;k++) {
//gs.print(tableList[k]);
var returnList = checkUserCriteria(userCriteriaSysId,tableList[k]);
if(returnList.length >0) {
for (var l=0; l<returnList.length;l++) {
referenceList.push(returnList[l]);
}
}
}
for (var q=0;q<referenceList.length;q++) {
gs.print(referenceList[q]);
}
function checkUserCriteria(sysId, tableName) {
var returnList = [];
var query = 'user_criteria=' + sysId;
var grReference = new GlideRecord(tableName);
grReference.addEncodedQuery(query);
grReference.query();
while(grReference.next()) {
returnList.push(tableName+ "|" + grReference.sys_id +"|" + sysId);
}
return returnList;
}
Sample output
*** Script: m2m_sp_instance_uc_can_view|11cc4166db1ddc10d5*********|78060fac871023000e3********
*** Script: m2m_sp_instance_uc_can_view|79de3c6edb99dc10d57********|78060fac871023000e3*******
https://www.servicenow.com/community/now-platform-articles/script-to-find-out-which-user-criteria-is-in-use/ta-p/2319858