---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# RemedialActionEngine - 범위 지정됨

# RemedialActionEngine - 범위 지정됨 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 14분

RemedialActionEngine API는 정정 작업을 수행하기 위한 메서드를 제공합니다.  
이 API는 정정 작업 프레임워크의 일부이며 다음 작업을 수행하는 데 사용할 수 있습니다.

* 정정 작업을 시작합니다.
* 정정 작업 실행을 트리거합니다.
* 정정 작업을 실행하려면 로그인한 사용자의 인증을 확인합니다.
* 대상 기록에 대한 정정 작업의 적용 가능성을 확인합니다.
* 대상 작업의 현재 실행 상태와 출력 페이로드를 가져옵니다.
{#RemedialActionScopedAPI__ul_mx3_dyr_gxb}

이 API에는 com.snc.sn_reacf(정정 작업 프레임워크) 스토어 애플리케이션이 필요하며 `sn_reacf` 네임스페이스 내에서 제공됩니다.

## RemedialActionEngine - beginRemediation(문자열 remedialAction, 문자열 parentTable, 문자열 parentRecord, 객체 actionParams, 문자열 targetRecord, 문자열 originRecord) {#ariaid-title2}

대상 기록에 대해 상위 기록에서 정정 작업을 시작합니다. 이 방법은 "준비" 상태의 새 정정 작업 실행 기록을 생성합니다.
주:  
요청 매개변수를 정의할 때는 다음 사항에 유의하십시오.

* 매개변수 유형이 객체 또는 배열인 경우 각 속성과 해당 유형을 정의합니다.
* 매개변수 유형이 GlideRecord인 경우 요청에 연결된 테이블을 제공합니다.
{#RemAction-beginRemed_S_S_O_S_S__ul_v5r_54d_3yb}
{#RemAction-beginRemed_S_S_O_S_S__table_dcp_cgs_gxb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialAction | 문자열 또는 GlideRecord | 연방 조치 \[sn_reacf_remedial_action\] 테이블의 Sys_id 또는 internal_name 또는 GlideRecord입니다. |
| parentTable | 문자열 | 상위 기록의 테이블 이름입니다. |
| parentRecord | 문자열 | 상위 기록의 Sys_id입니다. |
| actionParams | 객체 | 옵션입니다. 정정 작업 매개변수 이름 및 값의 맵입니다. { "<parameter name>": <parameter value> } 주: 매개변수 값은 정정 작업 매개변수 \[sn_reacf_remedial_action_parameter\] 테이블에 정의된 유형이어야 합니다. |
| targetRecord | 문자열 또는 GlideRecord | 옵션입니다. 구성된 대상 테이블의 Sys_id 또는 GlideRecord입니다. |
| 원본 기록 | 문자열 또는 GlideRecord | 옵션입니다. 정정 작업 원본 \[sn_reacf_remedial_action_origin\] 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 1. 매개변수]

{#RemAction-beginRemed_S_S_O_S_S__table_dcp_cgs_gxb} {#RemAction-beginRemed_S_S_O_S_S__table_ecp_cgs_gxb__entry__2}

| 유형 | 설명 |
|-|-|
| 객체 | { "statusCode": "String", "actionExecutionRequestId": "String", "parentRecord": "String", "parentTable": "String" } |
| \<Object\>.statusCode | 정정 작업 실행 요청의 상태 코드(예: 성공, duplicate_request 또는 실패) |
| \<Object\>.actionExecutionRequestId | 새 정정 작업 실행 기록 또는 중복 동시 정정 작업 실행 기록의 Sys_id |
| \<Object\>.parentRecord | 중복 동시 정정 작업 실행 기록의 상위 기록 Sys_id입니다. |
| \<Object\>.parent테이블 | 중복 동시 정정 작업 실행 기록의 상위 기록의 테이블 이름입니다. |
[표 2. 반환]

{#RemAction-beginRemed_S_S_O_S_S__table_ecp_cgs_gxb}  
다음 예시에서는 정정 작업을 시작하는 방법을 보여줍니다. 여기서 정정 작업은 내부적으로 CI 작업을 사용하여 CI의 프로세스를 종료합니다.

    var remedialAction = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of the Action
    var parentTable = "incident"; //table name of the Parent record
    var parentRecord = "62733787871e25105763ec6d0ebb3579" //sys_id of the Parent record
    var actionParams = {
        process_id: "322113"
    }
    var targetRecord = "af57a3418775e5105763ec6d0ebb356d"; //sys_id of the Target record
    var originRecord = "26e78022c3d525104f1a722e3f40dd99"; //sys_id of the Origin record

    var remedialActionEngine = new sn_reacf.RemedialActionEngine();
    var response = remedialActionEngine.beginRemediation(remedialAction, parentTable, parentRecord, actionParams, targetRecord, originRecord);
     
    gs.info(JSON.stringify(response));

출력 객체:

    Case 1 :successful : 
    {
      'statusCode': 'successful',
      'actionExecutionRequestId: '979b6060a5954300964fa3aa92874155'

    }

    Case 2 :Duplicate : 
    {
      'statusCode': 'duplicate_request,
      'actionExecutionRequestId': '552c48888c033300964f4932b03eb092',
      'parentRecord' : '1a14620f973be110539e35d11153afc8',
      'parentTable': 'incident'

    }

    Case 3 : Failed 
    {
      'statusCode': 'failed,
    }

## RemedialActionEngine - canCancel(문자열 remedialActionExecution) {#ariaid-title3}

이 방법은 현재 사용자가 지정된 정정 작업 실행을 취소할 수 있는지 여부를 확인하는 데 사용됩니다.
주:  
요청 매개변수를 정의할 때는 다음 사항에 유의하십시오.

* 매개변수 유형이 객체 또는 배열인 경우 각 속성과 해당 유형을 정의합니다.
* 매개변수 유형이 GlideRecord인 경우 요청에 연결된 테이블을 제공합니다.
{#RemAction-canCancel_S__ul_v5r_54d_3yb}
{#RemAction-canCancel_S__table_lkw_xrd_3yb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialActionExecution | 문자열 또는 GlideRecord | 정정 작업 실행 \[sn_reacf_remedial_action_execution\] 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 3. 매개변수]

{#RemAction-canCancel_S__table_lkw_xrd_3yb} {#RemAction-canCancel_S__table_mkw_xrd_3yb__entry__2}

| 유형 | 설명 |
|-|-|
| 부울 | 정정 작업 실행 요청을 취소할 수 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * 예: 지정된 정정 작업 실행 요청을 취소할 수 있습니다. * 아니오: 지정된 정정 작업 실행 요청을 취소할 수 없습니다. {#RemAction-canCancel_S__ul_wxm_psd_3yb} |
[표 4. 반환]

{#RemAction-canCancel_S__table_mkw_xrd_3yb}  
다음 예제에서는 현재 사용자가 현재 상태에서 정정 작업 실행을 취소할 수 있는지 여부를 확인하는 방법을 보여줍니다.

    var remedialActionExecutionId = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of sn_reacf_remedia_action_execution record

    var remedialActionEngine = new sn_reacf.RemedialActionEngine();
    var canCancel = remedialActionEngine.canCancel(remedialActionExecutionId)

    gs.info("canCancel: " + canCancel);

출력:

    canCancel: true

## RemedialActionEngine - cancelExecution(문자열 remedialActionExecution) {#ariaid-title4}

정정 작업 실행 요청을 취소한 다음 실행 기록을 "취소됨" 상태로 업데이트하고 성공 시 예를 반환합니다.
주:  
요청 매개변수를 정의할 때는 다음 사항에 유의하십시오.

* 매개변수 유형이 객체 또는 배열인 경우 각 속성과 해당 유형을 정의합니다.
* 매개변수 유형이 GlideRecord인 경우 요청에 연결된 테이블을 제공합니다.
{#RemAction-cancelExecution_S__ul_v5r_54d_3yb}
{#RemAction-cancelExecution_S__table_lkw_xrd_3yb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialActionExecution | 문자열 또는 GlideRecord | 정정 작업 실행 \[sn_reacf_remedial_action_execution\] 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 5. 매개변수]

{#RemAction-cancelExecution_S__table_lkw_xrd_3yb} {#RemAction-cancelExecution_S__table_mkw_xrd_3yb__entry__2}

| 유형 | 설명 |
|-|-|
| 부울 | 정정 작업 실행 요청을 취소할 수 있는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 지정된 정정 작업 실행 요청이 성공적으로 취소되었습니다. true의 상태는 실행 기록을 "취소됨" 상태로 업데이트합니다. * 아니오: 지정된 정정 작업 실행 요청이 성공적으로 취소되지 않았습니다. {#RemAction-cancelExecution_S__ul_wxm_psd_3yb} |
[표 6. 반환]

{#RemAction-cancelExecution_S__table_mkw_xrd_3yb}  
다음 예는 현재 상태에서 정정 작업 실행을 취소하는 방법을 보여줍니다.

    var remedialActionExecutionId = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of sn_reacf_remedia_action_execution record

    var remedialActionEngine = new sn_reacf.RemedialActionEngine();
    var cancelExecution = remedialActionEngine.cancelExecution(remedialActionExecutionId)

    gs.info('cancelExecution: ' + cancelExecution);

출력:

    cancelExecution : true

## RemedialActionEngine - executeRemedialAction(문자열 remedialActionExecution) {#ariaid-title5}

시작되어 현재 준비 상태인 정정 작업 실행을 트리거합니다. 이 메서드는 대상 작업(예: CI 작업)을 시작하고 정정 작업 실행 상태를 "진행 중"으로 전환합니다.
{#RemAction-executeRemedialAction_S__table_htl_mfs_gxb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialActionExecution | 문자열 또는 GlideRecord | 정정 작업 실행 \[sn_reacf_remedial_action_execution\] 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 7. 매개변수]

{#RemAction-executeRemedialAction_S__table_htl_mfs_gxb} {#RemAction-executeRemedialAction_S__table_itl_mfs_gxb__entry__2}

| 유형 | 설명 |
|-|-|
| 객체 | 객체에는 정정 작업 실행의 action_execution_table과 action_execution_id이 포함되어 있습니다. { "action_execution_table": "String", "action_execution_id": "Sys_id" } |
[표 8. 반환]

{#RemAction-executeRemedialAction_S__table_itl_mfs_gxb}  
다음 예시에서는 정정 작업을 실행하는 방법을 보여줍니다.

    var remedialActionExecution = "8ed58be387d2a5100295ebd73cbb35a3"; //Sys_id of the Remedial Action Execution record 
     
    var remedialActionEngine = new sn_reacf.RemedialActionEngine(); 
    var response = remedialActionEngine.executeRemedialAction(remedialActionExecution); 
    gs.info("Response: " + JSON.stringify(response, null, 2));

출력:

    { 
      "action_execution_table": "sn_cimaf_action_request", 
      "action_execution_id": "2d7843a787d2a5100295ebd73cbb35d4" 
    }

## RemedialActionEngine - getRemedialActionOutput(문자열 remedialActionExecution) {#ariaid-title6}

대상 작업의 현재 실행 상태와 출력 페이로드를 가져옵니다.
{#RemAction-getRemedialActionOutput_S__table_rtg_32s_gxb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialActionExecution | 문자열 또는 GlideRecord | 정정 작업 실행 \[sn_reacf_remedial_action_execution\] 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 9. 매개변수]

{#RemAction-getRemedialActionOutput_S__table_rtg_32s_gxb} {#RemAction-getRemedialActionOutput_S__table_stg_32s_gxb__entry__2}

| 유형 | 설명 |
|-|-|
| 객체 | 객체에는 대상 작업 상태의 값과 표시 값이 있는 상태 객체와 정정 작업 실행의 일부로 실행된 대상 작업 출력이 있는 페이로드 배열이 포함됩니다. 데이터 유형: 문자열 { "status": { "value": "completed", "displayValue": "Completed" }, "payload": [ "{\"output\":\"SUCCESS: The process with PID 19604 has been terminated.\\r\\n\",\"cmd\":\"taskkill /pid 19604 /f\"}" ] } |
[표 10. 반환]

{#RemAction-getRemedialActionOutput_S__table_stg_32s_gxb}  
다음 예제는 대상 작업의 현재 실행 상태와 출력 페이로드를 가져오는 방법을 보여줍니다.

    var remedialActionExecution = "8ed58be387d2a5100295ebd73cbb35a3"; //sys_id of the Remedial Action Execution record

    var remedialActionEngine = new sn_reacf.RemedialActionEngine();
    var response = remedialActionEngine.getRemedialActionOutput(remedialActionExecution);

    gs.info("Response: " + JSON.stringify(response, null, 2));

출력:

    {
      "status": {
        "value": "completed",
        "displayValue": "Completed"
      },
      "payload": [
        "{\"output\":\"SUCCESS: The process with PID 19604 has been terminated.\\r\\n\",\"cmd\":\"taskkill /pid 19604 /f\"}"
      ]
    }

## RemedialActionEngine - isApplicable(문자열 remedialAction, 문자열 targetRecord) {#ariaid-title7}

대상 기록에 대한 정정 작업의 적용 가능성을 확인합니다.
{#RemAction-isApplicable_S_S__table_m4x_wcs_gxb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialAction | 문자열 또는 GlideRecord | 정정 작업 \[sn_reacf_remedial_action\] 테이블의 Sys_id 또는 internal_name 또는 GlideRecord입니다. |
| targetRecord | 문자열 또는 GlideRecord | 구성된 대상 테이블의 Sys_id 또는 GlideRecord입니다. |
[표 11. 매개변수]

{#RemAction-isApplicable_S_S__table_m4x_wcs_gxb} {#RemAction-isApplicable_S_S__table_n4x_wcs_gxb__entry__2}

| 유형 | 설명 |
|-|-|
| 부울 | 정정 작업에 대한 대상 기록의 적용 가능성을 나타내는 플래그입니다. * true: 정정 작업을 지정된 대상 기록에 적용할 수 있습니다. * 아니오: 정정 작업을 지정된 대상 기록에 적용할 수 없습니다. {#RemAction-isApplicable_S_S__ul_tfw_lds_gxb} |
[표 12. 반환]

{#RemAction-isApplicable_S_S__table_n4x_wcs_gxb}  
다음 예는 대상 기록에 대한 정정 작업의 적용 가능성을 확인하는 방법을 보여줍니다.

    var remedialAction = "9ef9924c436521101a24ff53e9b8f2d2"; //Sys_id of the Remedial Action Execution record 
    var targetRecord = "df3799a387a921100295ebd73cbb35c4"; //Sys_id of the Target Record 
     
    var remedialActionEngine = new sn_reacf.RemedialActionEngine(); 
    var isApplicable = remedialActionEngine.isApplicable(remedialAction, targetRecord); 
    gs.info("Is applicable: " + isApplicable);

출력:

    Is applicable: true

## RemedialActionEngine - isAuthorized(문자열 remedialAction) {#ariaid-title8}

사용자에게 정정 작업을 실행할 권한이 있는지 확인합니다.
{#RemAction-isAuthorized_S__table_wpy_jzr_gxb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| remedialAction | 문자열 또는 GlideRecord | 정정 작업 \[sn_reacf_remedial_action\] 테이블의 Sys_id 또는 internal_name 또는 GlideRecord입니다. |
[표 13. 매개변수]

{#RemAction-isAuthorized_S__table_wpy_jzr_gxb} {#RemAction-isAuthorized_S__table_xpy_jzr_gxb__entry__2}

| 유형 | 설명 |
|-|-|
| 부울 | 사용자 인증의 결과 성공 상태를 나타내는 플래그입니다. * true: 사용자 인증에 성공했습니다. * false: 사용자 인증에 실패했습니다. {#RemAction-isAuthorized_S__ul_wzf_lbs_gxb} |
[표 14. 반환]

{#RemAction-isAuthorized_S__table_xpy_jzr_gxb}  
다음 예는 정정 작업을 실행하기 위해 인증을 확인하는 방법을 보여줍니다.

    var actionSysId = "e62f550843e121101a24ff53e9b8f23b"; //Sys_id of the Action 
     
    var remedialActionEngine = new sn_reacf.RemedialActionEngine(); 
    var isAuthorized = remedialActionEngine.isAuthorized(actionSysId); 
    gs.info("Is user authorized: " + isAuthorized);

출력:

    Is user authorized: true


