인시던트 이벤트 비즈니스 규칙
인시던트 이벤트 비즈니스 규칙은 시스템에 제공되며 인시던트 테이블의 다양한 작업으로 트리거할 수 있는 여러 이벤트를 정의합니다.
이 비즈니스 규칙은 여러 이벤트를 정의하며, 그 중 세 이벤트는 인시던트 테이블의 기록을 삽입하거나 업데이트한 후에 트리거됩니다. 첫 번째 스크립트는 다음과 같습니다.
if (current.operation() != 'insert' && current.comments.changes()) {
gs.eventQueue("incident.commented", current, gs.getUserID(), gs.getUserName());
}이 스크립트의 조건은 기존(삽입되지 않은) 인시던트 기록의 설명 필드를 변경할 것을 요구합니다. 이 조건이 true이면 플랫폼이 incident.commented 이벤트를 이벤트 큐에 추가합니다.
두 번째 조건에서는 이벤트를 큐에 추가하기 전에 기록을 삽입해야 합니다.
if (current.operation() =='insert') {세 번째 조건은 인시던트 기록이 업데이트될 때마다 True입니다(첫 번째 스크립트에서 지정한 설명 필드의 업데이트 포함).
if (current.operation() == 'update')각 스크립트의 then 부분인 gs.eventQueue 함수는 이벤트를 이벤트 큐에 추가합니다. 이 명령문은 중괄호로 설정된 다음 구문을 사용합니다.
gs.eventQueue("incident.updated", current, gs.getUserID(), gs.getUserName());gs.eventQueue 함수는 다음 파라미터를 사용합니다.
| 필드 | 입력 값 |
|---|---|
| 이름 | 따옴표로 묶인 트리거된 이벤트의 이름 |
| 기록 | 스크립트의 조건이 true로 평가될 때 참조되는 기록입니다. 일반적으로 이는 현재로 표시되며, 이는 비즈니스 규칙이 작업 중인 현재 기록을 의미합니다. 비즈니스 규칙이 예약된 작업의 일부로 트리거되는 경우 해당 위치에 GlideRecord 인수를 사용합니다. |
| 파마 1 | 이벤트와 함께 시스템 또는 기록 정보를 전달하는 데 사용할 수 있는 선택적 매개변수입니다. 예를 들어 GlideSystem API 호출 gs.getUserID() 는 현재 기록에 대해 작업한 사용자의 Sys ID를 문자열 값으로 전달합니다. 다른 스크립트는 ${event.parm1} 형식을 사용하여 이 문자열 값을 parm1로 참조할 수 있습니다. |
| 파마 2 | 이벤트와 함께 시스템 또는 기록 정보를 전달하는 데 사용할 수 있는 선택적 매개변수입니다. 예를 들어 GlideSystem API 호출 gs.getUserName() 은 현재 기록에 대해 작업한 사용자의 사용자 이름을 전달합니다. 다른 스크립트는 ${event.parm2} 형식을 사용하여 이 문자열 값을 parm2로 참조할 수 있습니다. |
주:
gs입니다. EventQueue 함수는 백엔드와 직접 작동하므로 gs에서 호출하는 비즈니스 규칙입니다. EventQueue()는 호출되지 않습니다.