Name
sn_data_discovery.FindingsTableUtil
Description
This Util can be used for Findings table updates.
Script
var FindingsTableUtil = Class.create();
FindingsTableUtil.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
updateState: function(dictionarySysIds, dataClassSysIds, stateValue) {
var m2mDictDataClass = new GlideRecordSecure('m2m_dictionary_dataclass');
m2mDictDataClass.addQuery('sys_dictionary', 'IN', dictionarySysIds);
m2mDictDataClass.addQuery('data_class', 'IN', dataClassSysIds);
m2mDictDataClass.query();
var findingsSysDictEntriesToUpdate = "";
while (m2mDictDataClass.next()) {
findingsSysDictEntriesToUpdate += m2mDictDataClass.getValue("sys_dictionary");
findingsSysDictEntriesToUpdate += ",";
}
if (findingsSysDictEntriesToUpdate.length > 0) {
var discFindinngRec = new GlideRecordSecure('sn_data_discovery_finding');
discFindinngRec.addQuery('sys_dictionary', 'IN', findingsSysDictEntriesToUpdate);
discFindinngRec.setValue('status', stateValue);
discFindinngRec.updateMultiple();
}
},
updateStateByFindingSysId: function() {
var sysIds = this.getParameter("sysparm_findingSysIds");
var statusValue = this.getParameter("sysparm_statusValue");
var discFindingRec = new GlideRecordSecure('sn_data_discovery_finding');
discFindingRec.addQuery('sys_id', 'IN', sysIds);
discFindingRec.addQuery('status', '!=', 'classified');
discFindingRec.setValue('status', statusValue);
discFindingRec.updateMultiple();
},
getClassifiedDictionaryIdsFromFindings: function(sysIds) {
var dictionarySysIds = "";
var findingGr = new GlideRecord("sn_data_discovery_finding");
findingGr.addQuery("sys_id", "IN", sysIds);
findingGr.query();
while (findingGr.next()) {
dictionarySysIds += findingGr.getValue("sys_dictionary");
dictionarySysIds += ",";
}
dictionarySysIds = this._trim(dictionarySysIds);
var m2mDictDataClass = new GlideRecordSecure('m2m_dictionary_dataclass');
m2mDictDataClass.addQuery('sys_dictionary', 'IN', dictionarySysIds);
m2mDictDataClass.query();
var findingsSysDictEntriesToUpdate = "";
while (m2mDictDataClass.next()) {
findingsSysDictEntriesToUpdate += m2mDictDataClass.getValue("sys_dictionary");
findingsSysDictEntriesToUpdate += ",";
}
findingsSysDictEntriesToUpdate = this._trim(findingsSysDictEntriesToUpdate);
return findingsSysDictEntriesToUpdate;
},
_trim: function(ids) {
return ids.substring(0, ids.length - 1);
},
type: 'FindingsTableUtil'
});
Sys ID
065ee5437324611020581f877bf6a77c