- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-11-2019 10:30 AM
Hi,
I am trying to implement a fix/workaround to an existing issue in ServiceNow that they are not planning on fixing. We began commenting the Work Notes and Additional Comments into our close notes and occasionally get a "_123STREAMENTRY321_". I would like to be able to search a variable that we have called endNotes for that string and remove it. However, I can't even detect the string within it and am not sure what I am doing wrong. You can see the original below along with my first attempt (which had positive results, but did not fix all of them.) which tries to filter it out before it event hits endNotes, and my second attempt, which is, again, me trying to search the string for the value and just erase it, but I'm not getting that right.
(function executeRule(current, previous /*null when async*/) {
// Add your code here
var endNotes = "";
var timeDate = gs.nowDateTime();
var work = current.getValue('work_notes');
var additional = current.getValue('comments');
/*//Filter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not all
var resw = work.substring(0,18);
var resa = additional.substring(0,18);
if (resw == "_123STREAMENTRY321_") {
work = work.substring(19,-1);
}
if (resa == "_123STREAMENTRY321_") {
additional = additional.substring(19,-1);
}*/
//Filter out _123STREAMENTRY321_ Attempt 2
regex = "\b(_123STREAMENTRY321_)\b/g";
if (work != ''){
endNotes = "Work Notes (" + timeDate + "):\n" + work + "\n\nAdditional Comments (" + timeDate + "):\n" + additional;
if(endNotes.indexOf("_123STREAMENTRY321_") > -1){
gs.addErrorMessage("We've detected it");
}
current.setValue('close_notes',endNotes);
}
else {
endNotes = "Additional Comments (" + timeDate + "): \n" + additional;
current.setValue('close_notes',endNotes);
}
/*// Original below
if (work != ''){
endNotes = "Work Notes (" + timeDate + "):\n" + work + "\n\nAdditional Comments (" + timeDate + "):\n" + additional;
current.setValue('close_notes',endNotes);
}
else {
endNotes = "Additional Comments (" + timeDate + "): \n" + additional;
current.setValue('close_notes',endNotes);
}*/
})(current, previous);
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-11-2019 10:50 AM
Hi this will remove the '_123STREAMENTRY321_', much easier than using a Reg exp. works bith in Client or Server side scripts.
var myString = 'Filter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not all';
var myNewString = myString.replace('_123STREAMENTRY321_ ', '');
gs.info(myNewString )

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-11-2019 10:50 AM
Hi this will remove the '_123STREAMENTRY321_', much easier than using a Reg exp. works bith in Client or Server side scripts.
var myString = 'Filter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not all';
var myNewString = myString.replace('_123STREAMENTRY321_ ', '');
gs.info(myNewString )
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-12-2019 07:26 AM
I gave this a try, and it did work, but it only replaced the first one. Tips on putting this into a loop?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-12-2019 07:37 AM
var myString = 'Filter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not allFilter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not allFilter out _123STREAMENTRY321_ Attempt 1 - Reduced number of entries, but not all';
var filter = '_123STREAMENTRY321_'
while(myString.search(filter)!=-1){
myString = myString.replace(filter , '');
}
gs.info(myString)
Not the prettiest of scripts but it dose the work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-12-2019 07:57 AM
Thanks. I had written a loop but I didn't know to do the -1 condition so it just got stuck. Either way, Vignesh worked and it is simpler, as you saw.