Skip to content

Commit 4d00aec

Browse files
Script Include.js
client callable script include
1 parent 7f4e3c9 commit 4d00aec

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
var close_item = Class.create();
2+
close_item.prototype = Object.extendsObject(global.AbstractAjaxProcessor, {
3+
getRelatedItems: function() {
4+
var caseId = this.getParameter('sysparm_case_id');
5+
var results = [];
6+
7+
// Get child HR cases
8+
var childCases = new GlideRecord('sn_hr_core_case');
9+
childCases.addQuery('parent', caseId);
10+
childCases.query();
11+
while (childCases.next()) {
12+
results.push({ type: 'HR Case', number: childCases.getValue('number') });
13+
}
14+
15+
// Get tasks
16+
var tasks = new GlideRecord('sn_hr_core_task');
17+
tasks.addQuery('hr_case', caseId);
18+
tasks.query();
19+
while (tasks.next()) {
20+
results.push({ type: 'HR Task', number: tasks.getValue('number') });
21+
}
22+
23+
return JSON.stringify(results);
24+
},
25+
closeRelatedItems: function() {
26+
var caseId = this.getParameter('sysparm_case_id');
27+
28+
// Close child cases
29+
var childCases = new GlideRecord('sn_hr_core_case');
30+
childCases.addQuery('parent', caseId);
31+
childCases.query();
32+
while (childCases.next()) {
33+
childCases.setValue('state', '3');
34+
childCases.update();
35+
}
36+
37+
// Close tasks
38+
var tasks = new GlideRecord('sn_hr_core_task');
39+
tasks.addQuery('hr_case', caseId);
40+
tasks.query();
41+
while (tasks.next()) {
42+
tasks.setValue('state', '3');
43+
tasks.update();
44+
}
45+
46+
return "done";
47+
48+
},
49+
type: 'close_task'
50+
});

0 commit comments

Comments
 (0)