조건에 따라 트리거 실행

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기3분
  • MetricBase 트리거는 단일 메트릭을 기반으로 실행됩니다. 조건 스크립트는 트리거가 흐름을 시작하는지 여부를 결정하는 추가 요구 사항을 적용합니다.

    시작하기 전에

    필요한 역할: 관리자

    이 태스크 정보

    조건 스크립트는 트리거에 대한 조건이 충족될 때 트리거가 플로우를 워크플로우 스튜디오 실행하기 전에 실행됩니다. 조건 스크립트는 이러한 방식으로 트리거 조건이 충족되더라도 트리거가 플로우를 실행하지 못하게 할 수 있습니다. 예를 들어 데이터는 시간이 지남에 따라 변동되는 경우가 많습니다. 작은 변동으로 인해 원치 않는 중복 트리거 이벤트가 발생할 수 있습니다. 조건 스크립트는 잘못된 중복을 방지할 수 있습니다.

    조건 스크립트는 중재자 스크립트라고도 합니다.

    조건 스크립트는 항상 true (트리거) 또는 false (트리거하지 않음)를 반환합니다. 이러한 스크립트를 작성하는 방법에 대한 자세한 내용은 다음을 참조하십시오. 의 스크립팅 ServiceNow Fundamentals. 스크립트를 시험해 보려면 다음을 참조하십시오. 다음에 익숙해지기 MetricBase API.

    프로시저

    1. 다음으로 이동 모두 > MetricBase > MetricBase 트리거 > 트리거 조건 스크립트.
    2. 새로 만들기를 선택합니다.
    3. 양식의 필드에 내용을 입력합니다.
      필드 설명
      이름 조건 스크립트의 이름입니다.
      애플리케이션 조건 스크립트의 범위입니다. 값 Global은 작업이 모든 애플리케이션에 적용됨을 의미합니다.
      설명 조건 스크립트가 수행하는 작업에 대한 설명입니다. 언제 True 또는 False를 반환합니까?
      스크립트 JavaScript를 입력할 필드입니다. 흐름을 실행하려면 true 를 반환하도록 합니다.
    4. 조건 스크립트를 작성합니다.

      스크립트를 작성할 때 조건문(실행해야 하는 경우와 실행하지 않아야 하는 경우)에 대해 생각해 보십시오. 모두 true로 평가되면 스크립트가 true 를 반환하고 플로우가 실행되며, 그렇지 않으면 실행되지 않습니다. 다음 예제 스크립트는 드론이 낮은 고도(레벨 1로 정의됨)에서 너무 빠르게 이동할 때 플로우를 트리거합니다. 이 예시는 조건 스크립트를 작성하는 일반적인 방법을 보여줍니다.

      1. 필터 기능 매개변수로 전달된 트리거 정의를 가져옵니다.
      2. 필터 함수 매개변수로 전달된 트리거 이벤트를 발생시키는 기록(현재)을 가져옵니다.
      3. 트리거 조건이 충족되고 필터 함수 매개변수로 전달된 시간을 기록에서 가져옵니다.
      4. 필터 함수 매개변수로 전달된 트리거 수준을 가져옵니다.
      5. 이러한 매개변수를 사용하여 수준 1 트리거 조건이 충족되고 travel_state 이동 또는 과속과 같을 경우 true를 반환합니다.
        function filter(/*GlideRecord*/ triggerDefinition, /*GlideRecord*/ current, /*GlideDateTime*/ start, /*int*/ level) {
        	// retrieve current travel state of drone
        	var travel_state = String(current.travel_state);
        	
        	// the drone is traveling at a significant speed, and the altitude just went below the threshold 
        	if (((travel_state === 'traveling') || (travel_state === 'speeding')) && (level === 1)){
        		return true; //process this trigger
        	}
        	
        	return false; // don't process this trigger
        }
        
      주:
      조건 스크립트는 신속하게 실행되어야 합니다.
    5. 제출을 선택합니다.

    다음에 수행할 작업

    플로우를 트리거와 연결하는 데 사용합니다워크플로우 스튜디오. 플로우를 구성할 때 생성한 조건 스크립트를 선택할 수 있습니다.
    그림 1. 의 트리거 정의에 조건 스크립트 추가 워크플로우 스튜디오
    트리거 정의에 조건 스크립트를 추가합니다.

    트리거 플로우 [sys_flow_metric_trigger] 테이블에서 조건 스크립트를 트리거 플로우와 연결할 수도 있습니다 MetricBase . 여기서 조건 스크립트를 트리거 플로우와 연결하면 에 표시되지 워크플로우 스튜디오않지만 트리거와 함께 계속 실행됩니다.

    그림 2. 트리거 플로우에 MetricBase 조건 스크립트 연결
    MetricBase 트리거 플로우 테이블에 조건 스크립트 연결