스크립트 작업 API - ServiceNow Fluent

  • 릴리스 버전: Zurich
  • 업데이트 날짜 2025년 07월 31일
  • 소요 시간: 4분
  • 스크립트 작업 API는 이벤트가 발생할 때 실행되는 스크립트 작업 [sysevent_script_action]을 정의합니다.

    예약된 스크립트 실행에 대한 일반적인 정보는 다음 문서를 참조하십시오 Script actions.

    ScriptAction 객체

    이벤트에 의해 트리거될 때 작업을 수행하는 스크립트 작업 [sysevent_script_action]을 만듭니다.

    표 1. 속성
    이름 유형 설명
    $id 문자열 또는 숫자 필수 메타데이터 객체의 고유 ID입니다. 애플리케이션을 빌드할 때 이 ID는 고유한 sys_id으로 해시됩니다. 자세한 내용은 ServiceNow Fluent 언어 구성 문서를 참조하십시오.

    형식: Now.ID['문자열' 또는 숫자]

    이름 문자열 필수 스크립트 작업의 고유한 이름입니다.
    스크립트 스크립트 필수 이벤트에 의해 트리거될 때 실행되는 서버 측 스크립트입니다. 이 속성은 JavaScript 모듈의 함수, 스크립트가 포함된 애플리케이션의 다른 파일에 대한 참조 또는 인라인 JavaScript를 지원합니다.
    체재:
    • 함수의 경우 JavaScript 모듈에서 익스포트한 함수, 함수 표현식 또는 기본 함수의 이름을 사용하여 .now.ts 파일로 임포트합니다. JavaScript 모듈에 대한 자세한 내용은 다음 문서를 참조하십시오 JavaScript 모듈 및 타사 라이브러리.
    • 다른 파일의 텍스트 컨텐츠를 사용하려면 Now.include('path/to/file') 형식을 사용하여 애플리케이션의 파일을 참조하십시오. 자세한 내용은 ServiceNow Fluent 언어 구성 문서를 참조하십시오.
    • 인라인 스크립트를 제공하려면 여러 줄의 코드에 문자열 리터럴 또는 템플릿 리터럴을 사용합니다( 'Script' 또는 'Script').
    eventName 문자열 필수 스크립트 작업 실행을 트리거하는 이벤트입니다. 이벤트 생성에 대한 자세한 내용은 다음 문서를 참조하십시오 Create an event.
    활성 부울 스크립트 작업을 사용할 수 있는지 여부를 나타내는 플래그입니다.
    유효한 값은 다음과 같습니다.
    • true: 이벤트에 의해 트리거될 때 스크립트 작업이 실행됩니다.
    • false: 스크립트 작업이 실행되지 않습니다.

    기본값: false

    설명 문자열 스크립트 작업의 기능과 목적에 대한 설명입니다.
    순서 번호 스크립트 작업이 실행되어야 하는 순서를 나타내는 숫자입니다. 특정 이벤트에 대해 여러 스크립트 작업이 있는 경우 스크립트 작업은 지정된 순서(가장 낮은 것부터 가장 높은 것)에 따라 실행됩니다.

    기본값: 100

    conditionScript 문자열 스크립트를 실행하기 위해 예여야 하는 필드와 값을 지정하는 JavaScript 조건문입니다.
    주:
    script 속성과 함께 조건문을 포함하는 경우에는 이 속성을 사용하지 마십시오.
    체재:
    • 다른 파일의 텍스트 컨텐츠를 사용하려면 Now.include('path/to/file') 형식을 사용하여 애플리케이션의 파일을 참조하십시오. 자세한 내용은 ServiceNow Fluent 언어 구성 문서를 참조하십시오.
    • 인라인 스크립트를 제공하려면 여러 줄의 코드에 문자열 리터럴 또는 템플릿 리터럴을 사용합니다( 'Script' 또는 'Script').
    $meta 객체 애플리케이션 메타데이터의 메타데이터입니다.
    installMethod 속성을 사용하면 애플리케이션 메타데이터를 특정 상황에서만 로드되는 출력 디렉터리에 매핑할 수 있습니다.
    $meta: {
          installMethod: 'String'
    }
    installMethod에 유효한 값:
    • demo: 데모 데이터 로드 옵션을 선택한 경우 애플리케이션과 함께 설치할 metadata/unload.demo 디렉터리에 애플리케이션 메타데이터를 출력합니다.
    • 첫 번째 설치: 애플리케이션이 인스턴스에 처음 설치될 때만 설치할 메타데이터 /언로드 디렉터리에 애플리케이션 메타데이터를 출력합니다.
    import { ScriptAction } from '@servicenow/sdk/core'
    import { insertIncident } from '../server/scripts.js'
    
    ScriptAction({
        $id: Now.ID['sample-script-action'],
        name: 'SampleScriptAction',
        active: true,
        description: 'Insert an incident',
        script: insertIncident,
        eventName: 'sample.event',
        order: 100,
        conditionScript: "gs.hasRole('my_role')"
    })

    스크립트 속성은 scripts.js 모듈의 기능을 참조합니다. 예:

    import { GlideRecord } from '@servicenow/glide'
    
    export const insertIncident = () => {
        var gr = new GlideRecord('incident')
        gr.initialize()
        gr.setValue('short_description', 'New incident from event')
        gr.insert()
    }