GlideMultiRecurrence - 범위 지정됨

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 6분
  • GlideMultiRecurrence API는 지정된 예약된 작업의 실행 시간을 설명하는 GlideDateTime 객체를 반환하는 메서드를 제공합니다.

    특정 주기적 또는 반복 작업(발생이라고도 함)을 실행해야 하는 시기를 결정해야 할 경우 이 API를 사용합니다.

    이 API는 sn_schdl_ns 네임스페이스에서 실행됩니다.

    이 API를 사용하려면 연결된 일정 테이블에 다음 필드(트리거) 중 하나 이상이 포함되어야 합니다.
    트리거 설명
    effective_end 작업의 예약된 종료 날짜 및 시간입니다.
    effective_start 작업의 시작 날짜 및 시간을 예약합니다.
    빈도 반환할 발생 횟수입니다.
    run_dayofmonth 작업을 실행할 날짜입니다. 유효한 값: 1-31
    run_dayofweek 작업을 실행할 요일입니다. 유효한 값: 1(일요일) - 7(토요일)
    run_month 작업을 실행할 월입니다. 유효한 값: 1-12
    run_time 작업을 실행할 GMT 시간입니다.
    run_weekinmonth 작업을 실행할 월의 주입니다. 유효한 값: 1-6
    time_zone 예약된 작업의 시간대입니다.
    trigger_type
    • 0: 한 번 실행
    • 1: 반복
    • 2: 요청 시
    • 3: 요일
    • 4: 일/월
    • 5: 주/월
    • 6: 일/월/연도
    • 7: 일/주/월/연도
    • 8: 지정된 시간에 실행
    • 9: 시스템 시작 시 실행
    • 10 : 간격
    • 11: 매일
    이 API를 사용할 때는 먼저 API가 작동해야 하는 일정 테이블에 대한 GlideRecord 객체를 생성해야 합니다. 그런 다음 발생 기록을 가져올 예약 기록을 검색합니다. 예:
    var table_nameGR = new GlideRecord('<table_name>'); // Scheduling table, such as sys_trigger
    table_nameGR.addQuery('sys_id', '<sys_id>'); // Sys_id of the scheduling record
    table_nameGR.query();
    table_nameGR.next();  // Retrieve the scheduling record

    GlideMultiRecurrence - getOccurrences()

    연결된 일정 기록(GlideRecord)에 정의된 트리거에 따라 지정된 예약된 작업이 특정 기간 내에 실행되어야 하는 각 예약된 실행 시간(발생)에 대해 GlideDateTime 객체를 반환합니다.

    이 메서드는 스케줄링 객체 내에 정의된 트리거를 사용하여 현재 GlideRecord 스케줄링 객체를 분석하여 작업을 실행할 시기를 결정합니다.

    반환 결과를 제어하는 속성:
    • com.glide.schedule.recurrence.num_occurrences_max: 반환할 최대 발생 횟수입니다.
    • com.glide.schedule.recurrence.num_occurrences_default: 반환할 기본 발생 횟수입니다.
    이 메서드는 다음 규칙을 적용하여 정의된 기간 동안 반환할 발생과 관련 트리거를 결정합니다.
    • 필드가 effective_start 유효하고 null이거나 비어 있지 않은 경우, 발생 반환을 시작하는 날짜로 사용합니다. 그렇지 않으면 현재 날짜를 사용하십시오.
    • 날짜 필드가 effective_end 유효하고 null이거나 비어 있지 않은 경우, 와 effective_start 날짜 필드 사이의 발생을 반환합니다 effective_end .

      위 규칙에 대한 예외: 날짜가 effective_end 너무 먼 미래로 인해 com.glide.schedule.recurrence.num_occurrences_max 속성에 지정된 발생 횟수보다 많이 반환되는 경우 결과는 com.glide.schedule.recurrence.num_occurrences_max에 지정된 값(기본값 500)으로 제한됩니다.

    • 날짜 필드가 null이거나 비어 있지만 필드가 frequency 설정된 경우 effective_end 을 사용하여 frequency 반환할 발생 횟수를 결정합니다.
    • 날짜 필드가 effective_start 과거인 경우 과거 날짜를 반환합니다.
    • effective_end 날짜 필드가 모두 지정된 경우 frequency com.glide.schedule.recurrence.num_occurrences_max 속성에 지정된 값으로 제한된 최대 발생 횟수로 날짜를 사용합니다effective_end.
    위의 규칙 중 어느 것도 참이 아니면 메서드는 시스템 속성의 기본 설정에 따라 발생을 반환합니다.
    주:
    MAX_Drift 은(는) 이 API에서 지원되지 않습니다.

    예: 및 effective_end 둘 다 frequency 지정됩니다. Effective_end 날짜 frequency 가 우선하며 무시됩니다.

    • frequency: 10
    • effective_start: 2022년 8월 1일
    • effective_end: 2022년 10월 10일
    • 트리거 유형: 일/월
    • 실행 일(월 중): 15

    반환된 GlideDateTime 객체 수 = 2.

    반환된 발생: 2022년 8월 15일, 2022년 9월 15일.

    예: 및 effective_end 둘 다 frequency 지정됩니다. Effective_end 날짜가 우선하며 frequency 무시되지만 반환되는 발생 수는 com.glide.schedule.recurrence.num_occurrences_max 속성의 값에 의해 제한됩니다.

    • frequency: 20
    • effective_start: 2022년 8월 1일
    • effective_end: 2070년 10월 30일
    • 트리거 유형: 일/월
    • 실행 일(월 중): 15

    반환된 GlideDateTime 객체 수 = 500.

    표 1. 매개변수
    이름 유형 설명
    gr일정 GlideRecord 일정 발생을 가져오려는 작업이 포함된 기록을 가리키는 GlideRecord 객체입니다.
    표 2. 반환
    유형 설명
    GlideDateTime 객체의 배열 예약된 작업을 실행해야 하는 매번의 GlideDateTime 객체입니다.

    다음 예제는 지정된 작업 일정 기록에 대해 특정 기간 동안 예약된 모든 실행 날짜/시간에 대한 GlideDateTime 객체를 검색하는 방법을 보여줍니다. 선택한 작업이 매시간 실행되도록 예약되어 있습니다.

    var sys_id = 'a9e30c7dc61122760116894de7bcc7bd'; // Sys_id of the job schedule record
    var table = 'sys_trigger'; // Table that contains the job schedule record
    
    var grSchedule = new GlideRecord(table);
    if
     (grSchedule.get(sys_id)) {
      var multiRecurrence = new sn_schdl_ns.GlideMultiRecurrence();
      var dates = multiRecurrence.getOccurrences(grSchedule); // Display the list of occurrences
      for(var i=0; i<dates.length; i++) {
        gs.info('occurrence = ' + dates[i]);
      }
    }

    출력:

    occurrence = 2022-11-21 16:23:23
    occurrence = 2022-11-21 17:23:23
    occurrence = 2022-11-21 18:23:23
    occurrence = 2022-11-21 19:23:23
    occurrence = 2022-11-21 20:23:23
    occurrence = 2022-11-21 21:23:23
    occurrence = 2022-11-21 22:23:23
    occurrence = 2022-11-21 23:23:23
    occurrence = 2022-11-22 00:23:23
    occurrence = 2022-11-22 01:23:23