Resolve Incident to closed

Avinash Dubey2
Tera Contributor

I want to Write a script to close all resolved incidents which are not updated on last 3 days

I have hardcoded the last the days but i want it to be calculated.

var str ="state=6^sys_updated_on<=javascript:gs.dateGenerate('2022-08-09','23:59:59')";

var gr = new GlideRecord('incident');

gr.addEncodedQuery(str);

gr.query();

while(gr.next()){

 gr.setValue('state','closed');

 gs.print(gr.state);

}

1 ACCEPTED SOLUTION

@Avinash Dubey 

Is your issue resolved?


Feel free to mark correct, if your issue has been resolved, so it ends up in solved queue.

Will be helpful for others looking for the similar query.

Best Regards
Aman Kumar

View solution in original post

10 REPLIES 10

Abhijit4
Mega Sage

You can also try with below method

//move datetime variable three days back dynamically
var gdt=new GlideDateTime();
gdt.addDaysUTC(-3)

var str ="state=6^sys_updated_on<=javascript:gs.dateGenerate(gdt)";
var gr = new GlideRecord('incident');
gr.addEncodedQuery(str);
gr.query();
while(gr.next()){
 gr.setValue('state','closed');
 gs.print(gr.state);
}

Please mark this as Correct or Helpful based on the impact.

Regards,
Abhijit
Community Rising Star 2022

By marking my response as correct or helpful, you contribute to helping future readers with similar issues.
Regards,
Abhijit
ServiceNow MVP

Hi After executing the script :

var gdt=new GlideDateTime();
gdt.addDaysUTC(-3);

var str ="state=6^sys_updated_on<=javascript:gs.dateGenerate(gdt)";
var gr = new GlideRecord('incident');
gr.addEncodedQuery(str);
gr.query();
while(gr.next()){
 gr.setValue('state','7');
 gs.print(gr.state);
 gr.update();
}

 

i am getting :

Evaluator: com.glide.script.RhinoEcmaError: "gdt" is not defined.
   script : Line(1) column(0)
==>   1: gs.dateGenerate(gdt)

Try below,


var gdt=new GlideDateTime();
gdt.addDaysUTC(-3);

var str ="state=6^sys_updated_on<=javascript:gs.dateGenerate("+gdt+")";
var gr = new GlideRecord('incident');
gr.addEncodedQuery(str);
gr.query();
while(gr.next()){
 gr.setValue('state','7');
 gs.print(gr.state);
 gr.update();
}

Please mark this as Correct or Helpful based on the impact.

Regards,
Abhijit
Community Rising Star 2022

By marking my response as correct or helpful, you contribute to helping future readers with similar issues.
Regards,
Abhijit
ServiceNow MVP

Ankur Bawiskar
Tera Patron
Tera Patron

Hi,

there is OOB logic for this which closes Resolved incidents not updated in 7 days

Update the system property to 3 and no script change required

BR Name: incident autoclose

Update this property -> glide.ui.autoclose.time -> 3

find_real_file.png

Regards
Ankur

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

@Avinash Dubey 

Did you get a chance to check on my above comment?

you need not create a new script; just updating system property will help you

Regards
Ankur

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader