- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 02:01 AM
Hi All,
I have a requirement Where I want to update the 'short description' of the catalog item to the 'Name of the catalog item' If short description is empty
What is the best way to achieve it
Thanks
Solved! Go to Solution.
- Labels:
-
Scripting and Coding
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 04:06 AM
Hi,
BR will work only for new records
If you want to fix older catalog items with empty short description then you need to run schedule job.
1) check which catalog items are having empty short description
2) then set short description with catalog item name
Sample script below for job
1) test this for 5 records using setLimit(5);
once verified then remove this line setLimit(5);
updateRecords();
function updateRecords(){
var rec = new GlideRecord('sc_cat_item');
rec.addEncodedQuery('short_descriptionISEMPTY');
rec.setLimit(5); // use for testing then remove this line
rec.query();
while(rec.next()){
rec.short_description = rec.name;
rec.update():
}
}
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 04:14 AM
Hi,
If you want to update existing records then go with Ankurs script.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 04:15 AM
I tried but it is also not working
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 08:36 AM
Thank you, Dhananjay, Ankur
Issues resolved
Actually the same script I tried with 'Script-Background' it worked
I don't know how? Might be a specialty of the 'Script-background'
For more reference find the script,
var vr=new GlideRecord('sc_cat_item');
vr.addActiveQuery();
vr.addEncodedQuery('type!=bundle^sys_class_name!=sc_cat_item_guide^type!=package^sys_class_name!=sc_cat_item_content^short_descriptionISEMPTY');
vr.query();
while(vr.next()){
//vr.setValue('short_description')='hi';
vr.short_description=vr.name;
vr.update();
//gs.addInfoMessage(vr.getRowCount());
}
Thanks,
Aj
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-26-2020 08:44 AM
Great! It looks like you marked your own response as the correct answer, which may be confusing to others that read this later.
If you find my response solved your issue, please mark answer as ✅ Correct & ????Helpful to help others with the same response find the answer more quickly
Regards
Ankur
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-30-2020 08:12 PM
Hi Ankur,
That was my mistake, thank you for making me correct
Regards,
Ajay
