- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-01-2020 01:28 AM
Hello,
(function executeRule(current, previous /*null when async*/ ) {
var responseSLA;
var resolutionSLA;
var resCheck;
var resoCheck;
var durCheck;
var slaCheck = new GlideRecord('task_sla');
slaCheck.addQuery('task', current.sys_id);
slaCheck.query();
while (slaCheck.next()) {
if (slaCheck.task.assignment_group.name.includes('Supply')) {
if (slaCheck.sla == 'c791bb61dbd658508a7cd0b2ca961906') {
responseSLA = slaCheck.start_time.getDisplayValue();
}
if (slaCheck.sla == '7ea3bba1dbd658508a7cd0b2ca9619ac' && slaCheck.stage == 'completed') {
resolutionSLA = slaCheck.end_time.getDisplayValue();
}
calcTime();
}
if (slaCheck.task.assignment_group.name.includes('AOG')) {
if (slaCheck.sla == '4858c35fdb9b50508a7cd0b2ca9619df') {
responseSLA = slaCheck.start_time.getDisplayValue();
}
if (slaCheck.sla == '6d48835fdb9b50508a7cd0b2ca961950' && slaCheck.stage == 'completed') {
resolutionSLA = slaCheck.end_time.getDisplayValue();
}
calcTime();
}
}
function calcTime() {
resCheck = GlideDateTime(responseSLA);
resoCheck = GlideDateTime(resolutionSLA);
durCheck = GlideDateTime.subtract(resCheck, resoCheck);
var finalTime = new GlideDuration(durCheck);
current.u_supplychain_calc = finalTime;
}
//current.update();
})(current, previous);
Above code will do subtraction of start and end date of two sla when it is completed. I want to subtract pause duration value from "finalTime" value. FYI, pause value is a duration field from task_sla. Can anyone assist on this.
Solved! Go to Solution.
- Labels:
-
Scripting and Coding
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-07-2020 09:37 PM
This got resolved by getting pause time as below
pauseDuration = slaCheck.pause_duration.dateNumericValue();
and after that,
durCheck = GlideDateTime.subtract(resCheck, resoCheck).getNumericValue();
var subTime = durCheck - pauseDuration;
var finalTime = current.u_supplychain_calc.setDateNumericValue(subTime);

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-05-2020 06:38 AM
It's not mentioned in ServiceNow documentation either.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-05-2020 06:47 AM
end_time is nothing but "Stop Time". No it's not custom field.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-05-2020 06:54 AM
My bad.
So the current problem is getting the value of end_time in update business rule.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-05-2020 06:58 AM
May be make this into a different question. I think there's somebody else who may be much better be able to solve this.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-05-2020 07:08 AM
I tried infomessages for pause duration and it works. Only issue is subtraction.