Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Can we write script to change reports filter condition?

AK79
Tera Contributor

Hi All,

I have a requirement, I have created a report on change table and added to a dashboard. I used a filter planned start date is between one week? Currently I am changing it manually every week.

Can anyone suggest can we write any script like scheduled job or anything which automatically add seven days in that??

 

Thanks in Advance

@Ankur Bawiskar @Jaspal Singh @Chuck Tomasi 

1 ACCEPTED SOLUTION

Hi,

update as this and it worked for me

var gr = new GlideRecord('sys_report');
gr.addQuery('sys_id','6a793872073630102011ff208c1ed0d5');
gr.query();
if(gr.next())
{
	var gdt = new GlideDateTime();
	var ed = new GlideDateTime(gdt);
	ed.addDaysUTC(7);

	var query = "end_dateBETWEENjavascript:gs.dateGenerate('" + gdt.getDate() + "','" + "00:00:00" + "')@javascript:gs.dateGenerate('" + ed.getDate() + "','" + "00:00:00" + "')";

	gr.filter = query;
	gr.update();
}

Regards
Ankur

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

View solution in original post

7 REPLIES 7

Hi,

update as this and it worked for me

var gr = new GlideRecord('sys_report');
gr.addQuery('sys_id','6a793872073630102011ff208c1ed0d5');
gr.query();
if(gr.next())
{
	var gdt = new GlideDateTime();
	var ed = new GlideDateTime(gdt);
	ed.addDaysUTC(7);

	var query = "end_dateBETWEENjavascript:gs.dateGenerate('" + gdt.getDate() + "','" + "00:00:00" + "')@javascript:gs.dateGenerate('" + ed.getDate() + "','" + "00:00:00" + "')";

	gr.filter = query;
	gr.update();
}

Regards
Ankur

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

Thank you so much Ankur.

Hi, Is it possible to have a condition that checks if the report is called by a dashboard?