File tree Expand file tree Collapse file tree 1 file changed +26
-0
lines changed
Server-Side Components/Business Rules/Auto Create Problem Records for Recurring Incidents Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Original file line number Diff line number Diff line change 1+ ( function executeRule ( current , previous ) {
2+ if ( ! current . cmdb_ci )
3+ return ;
4+
5+ var gr = new GlideAggregate ( 'incident' ) ;
6+ gr . addQuery ( 'cmdb_ci' , current . cmdb_ci ) ;
7+ gr . addQuery ( 'sys_created_on' , '>=' , gs . daysAgoStart ( 1 ) ) ;
8+ gr . addAggregate ( 'COUNT' ) ;
9+ gr . query ( ) ;
10+
11+ if ( gr . next ( ) && gr . getAggregate ( 'COUNT' ) >= 5 ) {
12+ var problemGR = new GlideRecord ( 'problem' ) ;
13+ problemGR . addQuery ( 'cmdb_ci' , current . cmdb_ci ) ;
14+ problemGR . addQuery ( 'state' , '<' , 8 ) ; // Not Closed
15+ problemGR . query ( ) ;
16+
17+ if ( ! problemGR . hasNext ( ) ) {
18+ problemGR . initialize ( ) ;
19+ problemGR . short_description = 'Recurring incidents on ' + current . cmdb_ci . name ;
20+ problemGR . cmdb_ci = current . cmdb_ci ;
21+ problemGR . state = 1 ; // New
22+ problemGR . insert ( ) ;
23+ gs . log ( 'Problem created for recurring incidents on CI: ' + current . cmdb_ci . name ) ;
24+ }
25+ }
26+ } ) ( current , previous ) ;
You can’t perform that action at this time.
0 commit comments