Comment
Dakker
Tera Guru

Thanks for the post, however, I could not make the script part work so I wrote my own.

 

Dakker_0-1691770482545.png

 

Dakker_1-1691770493525.png

Here is the script:

 

(function execute(inputs, outputs) {
try {
outputs.state = 'fail';
var recordFound = false;
var grRitm = new GlideRecord('sc_req_item');
grRitm.get(inputs.ritm);

var grItemOptionNew = new GlideRecord('item_option_new');
grItemOptionNew.addQuery('name', inputs.cat_var);
grItemOptionNew.addQuery('cat_item', grRitm.cat_item);
grItemOptionNew.query();

if (grItemOptionNew.next()) {
var grItemOptionMtom = new GlideRecord('sc_item_option_mtom');
grItemOptionMtom.addQuery('request_item', grRitm.sys_id);
grItemOptionMtom.query();

while (grItemOptionMtom.next() && !recordFound) {
var grItemOption = new GlideRecord('sc_item_option');
grItemOption.addQuery('item_option_new', grItemOptionNew.sys_id);
grItemOption.addQuery('sys_id', grItemOptionMtom.sc_item_option);
grItemOption.query();

if (grItemOption.next()) {
grItemOption.value = inputs.var_value;
grItemOption.update();
recordFound = true;
outputs.state = 'success';
}
}

}

outputs.state = 'success';
}
catch (e) {
gs.error(e);
outputs.state = 'error';
}

})(inputs, outputs);