조건부로 트리거 실행

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

    시작하기 전에

    필요한 역할: admin

    이 태스크 정보

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

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

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

    프로시저

    1. 다음으로 이동 모두 > MetricBase > MetricBase 트리거 > 트리거 조건 스크립트레이블이 표시됩니다.
    2. 새로 만들기를 선택합니다.
    3. 양식의 필드에 내용을 입력합니다.
      필드 설명
      이름 조건 스크립트의 이름입니다.
      애플리케이션 조건 스크립트의 범위입니다. Global 값은 작업이 모든 애플리케이션에 적용됨을 의미합니다.
      설명 조건 스크립트의 기능에 대한 설명입니다. 언제 True 또는 False를 반환합니까?
      스크립트 JavaScript를 입력할 필드입니다. Make는 흐름을 실행하기 위해 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 트리거 플로우 테이블에서 조건 스크립트 연결