Duplicates Numbers

Mr Bow
Kilo Expert

Hi there,

I am creating  a fix script that look for duplicates numbers in my custome table 'x_table', for the records that share the same number, the more recent record should be renumbered to the next available number.

so far i have this script:

  var dupRecords = []; 
     var gaDupCheck1 = new GlideAggregate('u_vendor_category'); 
     gaDupCheck1.addQuery('active','true'); 
     gaDupCheck1.addAggregate('COUNT','u_number'); 
     gaDupCheck1.groupBy('u_number'); 
     gaDupCheck1.addHaving('COUNT', '>', 1); 
     gaDupCheck1.query(); 
     while (gaDupCheck1.next()) { 
           dupRecords.push(gaDupCheck1.u_number.toString() + '\n'); 
     } 
     gs.print(dupRecords); 

So it will retrun an array with the duplicates number, any help?

1 ACCEPTED SOLUTION

That's a callback function assigning the record found in the above query or array and assigning it as the "current" record you're adjusting in the function below.

And yes...my script is for background use...


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!

View solution in original post

9 REPLIES 9

Allen Andreas
Administrator
Administrator

Hi,

Unless this is all purely coincidental...which I doubt, you aren't "creating" a fix script, haha, this has been posted in numerous threads, to include: https://community.servicenow.com/community?id=community_question&sys_id=d28b8761db9cdbc01dcaf3231f96... from like 5 years ago.

So this script will return an array of all the numbers that have a duplicate entry.

Not sure what else you're asking....

Thanks!

 


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!

yes thats right this will return an array of all the numbers that have a duplicate entry. i would like to get a record with the same  number and updated the recent record with another available number in the system so then it will not be longer duplicate.

Here's my thread:

https://community.servicenow.com/community?id=community_question&sys_id=f12e98c8db2153802b6dfb651f96...

Please mark reply as Helpful/Correct, if applicable. Thanks!


Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!

i dont relly get the following:

i runing this in a background script

function fixDuplicates(num) { // num can be replace with what?
   var gr = new GlideRecord('incident');
   gr.addQuery('number', num); // here as well what shall i puit in num
   gr.orderByDesc('sys_created_on');
   gr.query();
while (gr.next()) {
var nm = new NumberManager('incident');
gr.number = nm.getNextObjNumberPadded();
gr.update();
}
gs.print(gr.number);
}