如何根据 sys_updated_on 筛选 serviceNow 事件记录

How to filter serviceNow incident records based on sys_updated_on

我正在使用 xml web 服务 for service-now 来查询事件记录。我正在使用 java 和 apache Httpscomponents 进行调用。由于我有大量记录,因此想根据 sys_updated_on 过滤这些记录。我尝试的是将 uri 下面传递给 HTTPGet

https://<instance>-now.com/incident.do?CSV&sys_param_query=active=true^sys_updated_onBETWEENjavascript:gs.dateGenerate(2016-12-01,03:50:00)@javascript:gs.dateGenerate(2016-12-01,03:55:00)

但这对我不起作用,因为它返回所有记录,而不是过滤后的记录。 有人可以告诉我我在这里做错了什么以及更正吗? 谢谢

确保日期和时间字符串在引号中。

https://<instance>-now.com/incident.do?CSV&sys_param_query=active=true^sys_updated_onBETWEENjavascript:gs.dateGenerate('2016-12-01','03:50:00')@javascript:gs.dateGenerate('2016-12-01','03:55:00')

这至少在浏览器上对我有用,我看到的一个区别是日期在您的代码段中的格式设置方式:

https://<instance_url>/incident_list.do?CSV&amp;sysparm_query=active%3Dtrue%5Estate!%3D6%5Esys_updated_onBETWEENjavascript%3Ags.dateGenerate('2016-11-01'%2C'00%3A00%3A00')%40javascript%3Ags.dateGenerate('2016-12-07'%2C'23%3A59%3A59')

仅从 servenow.com 找到解决方案。

https://<instance>-now.com/incident_list.do?sysparm_query=sys_updated_onBETWEENjavascript%3Ags.dateGenerate('2016-12-01'%2C'00%3A00%3A00')%40javascript%3Ags.dateGenerate('2016-11-20'%2C'23%3A59%3A59')

https://<instance>-now.com/incident_list.do?sysparm_query=sys_updated_onBETWEENjavascript%3Ags.dateGenerate('2016-12-01','00:00:00')%40javascript%3Ags.dateGenerate('2016-11-20','23:59:59')

我是怎么找到这个的?在 your_instance.servicenow.com 上,当我们按下过滤器按钮时,右侧会显示一条过滤器线,右键单击它并 select 复制 url。附件是相同的图像。