---
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


---

# RTETransformer - 범위 지정됨

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

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

RTETransformer API는 제공된 ETL(추출, 변환 및 로드) 정의에 따라 메시지 배열을 연결된 ServiceNow 인스턴스의 기록으로 변환하고 저장하는 방법을 제공합니다.
예를 들어 사용자 정보가 포함된 JSON 페이로드가 있고 강력한 변환 엔진(RTE)을 사용하여 해당 정보를 sys_user 테이블로 변환하려는 경우 이 API를 사용할 수 있습니다.

이 API에 액세스할 때 `sn_impex` 네임스페이스를 사용합니다.

자세한 내용은 [강력한 변환 엔진 작업 정의](https://www.servicenow.com/docs/access?context=define-rte-operations&version=australia&pubname=australia-integrate-applications&ft:locale=en-US)를 참조하십시오.

## RTETransformer - RTETransformer(String transformDefinitionId, Boolean verboseLogging, 문자열 소스, Number batchSize) {#ariaid-title2}

RTETransformer 객체를 인스턴스화합니다.
{#RTETrans-RTETrans_S_B_S_N__table_rsd_fk2_jtb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| transformDefinitionId | 문자열 | 변환에 사용할 ETL(추출, 변환 및 로드) 정의의 Sys_id입니다. ETL 생성에 대한 자세한 내용은 [ETL(추출 변환 로드) 정의 생성을 참조하십시오.](https://www.servicenow.com/docs/access?context=create-etl-definitions&version=australia&pubname=australia-integrate-applications&ft:locale=en-US) 테이블: ETL 정의 \[sys_rte_eb_etl_definition\] |
| 자세한 정보 표시 로깅 | 부울 | 자세한 정보 로깅 및 디버깅을 위한 임포트 세트 행 생성을 사용할지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다. * true: 로깅을 활성화하고 임포트 세트 행 작성을 설정합니다. * 아니오: 로깅 및 임포트 세트 행 생성을 활성화하지 않습니다. {#RTETrans-RTETrans_S_B_S_N__ul_u1v_fm2_jtb} |
| 소스 | 문자열 | 임포트 세트 기록의 이름 필드입니다. |
| batchSize | 번호 | 한 번에 처리할 메시지 수(배치)입니다. 예를 들어 페이로드에 메시지가 10개 있고 이 값이 2로 설정된 경우 메서드는 5개의 개별 배치 작업을 실행하여 페이로드의 모든 메시지를 처리합니다. |
[표 1. 매개변수]

{#RTETrans-RTETrans_S_B_S_N__table_rsd_fk2_jtb}  
다음 코드 예제에서는 일괄 처리 크기가 10인 소스 `testSourceRecord`에 대해 RTETransformer 개체를 인스턴스화하는 방법을 보여 줍니다.

    (function(/*CTIOperationRequest*/ request, /*CTIOperationResponse*/ response, /*Context*/ ctx) {    
      // Uses an ETL definition with a target table of incident, and mappings for the number and short description field
      var transformer = new sn_impex.RTETransformer("c58f1c6377110110f5455d14cd5a998b", true, "testSourceRecord", 10);
      var messages = ["{\"number\":\"testnumber\",\"short_description\":\"testdesc\"}"];
      var results = transformer.transform(messages);

      for (var i = 0; i < results.length; i++) {
        var dataList = results[i].data.incident;
        gs.log("source record id: " + results[i].sourceRecordSysId);
        gs.log("status: " + results[i].status);
        for (var j = 0; j < dataList.length; j++) {
          gs.log("number:" + dataList[j].number);
          gs.log("short desc:" + dataList[j].short_description);
        }
      }
    })(request, response, ctx);

## RTETransformer - transform(배열 메시지) {#ariaid-title3}

제공된 ETL(추출, 변환 및 로드) 정의에 따라 메시지 배열을 연결된 ServiceNow 인스턴스의 기록으로 변환하고 저장합니다.
예를 들어 사용자 정보를 sys_user 기록으로 변환하려면 단일 메시지로 메시지 배열을 만들어 이 변환 메서드에 전달할 수 있습니다.
{#RTETrans-transform_A__table_xsb_bq2_jtb__entry__3}

| 이름 | 유형 | 설명 |
|-|-|-|
| 메시지 | 객체 배열 | ETL 정의를 기반으로 변환할 기록을 나타내는 문자열화된 JSON 객체입니다. 예를 들어 데이터가 활성인 단일 사용자, 이메일, 이름 및 성을 sys_user 테이블로 변환하려는 경우 메시지는 다음과 유사합니다. [ { "active":"true", "email":"example@servicenow.com", "first_name":"Jane", "last_name":"Doe" } ] 주: 필드 이름은 소스 엔터티 필드의 필드/경로와 일치해야 합니다. |
[표 2. 매개변수]

{#RTETrans-transform_A__table_xsb_bq2_jtb} {#RTETrans-transform_A__table_ysb_bq2_jtb__entry__2}

| 이름 | 설명 |
|-|-|
| 데이터 | 테이블 이름별로 구성된 변환된 기록에 대한 데이터입니다. 반환된 기록 데이터가 ETL 정의에 지정된 매핑된 필드와 일치합니다. 데이터 유형: 객체 "data": { "tableName": [] } |
| data.tableName | 기록이 포함된 테이블의 상세 정보입니다. 데이터 유형: 객체 배열 "tableName": [{ "sys_id": String, // Other data for a single transformed record }] } 예: "sys_user": [{ "sys_id":"b29e629877130110f5455d14cd5a99ad", "active": "true", "email": "example@servicenow.com", "first_name": "Jane", "last_name": "Doe" }] |
| data.tableName.sys_id | 테이블 내의 기록 Sys_id입니다. 데이터 유형: 문자열 |
| data.tableName.\<other_ETL_info\> | 전달된 ETL에 지정된 추가 필드입니다. 데이터 유형: 모두 |
| 메시지 | 지정된 기록을 변환하는 동안 오류가 발생하면 오류를 설명하는 메시지입니다. 변환이 성공하면 Null입니다. 데이터 유형: 문자열 |
| sourceRecordSysId | 임포트 세트 테이블 기록의 Sys_id입니다. 임포트 세트 테이블 이름은 JSON 이벤트 싱크 \[imp_json_event_sink\]입니다. 데이터 유형: 문자열 |
| 상태 | 변환의 상태입니다(예: 처리됨 또는 오류). 데이터 유형: 문자열 |
[표 3. 반환]

{#RTETrans-transform_A__table_ysb_bq2_jtb}  
다음 코드 예제에서는 User \[sys_user\] 테이블에서 기록을 변환하고 저장하는 방법을 보여 줍니다.

    (function(/*CTIOperationRequest*/ request, /*CTIOperationResponse*/ response, /*Context*/ ctx) { 
      // Uses an ETL definition with a target table of sys_user, and mappings for the active, 
      //email, first name, and last name fields
      var transformer = new sn_impex.RTETransformer("c58f1c6377110110f5455d14cd5a998b", true, "testSourceRecord", 10);
      var messages = [JSON.stringify({
        "active":"true",
        "email":"example@servicenow.com",
        "first_name":"Jane",
        "last_name":"Doe"
      }), 
      JSON.stringify({
        "active":"true",
        "email":"example2@servicenow.com",
        "first_name":"John",
        "last_name":"Deer"
      })];
      var results = transformer.transform(messages);

      for (var i = 0; i < results.length; i++) { 
        var dataList = results[i].data.sys_user;
        gs.log("source record id: " + results[i].sourceRecordSysId); gs.log("status: " + results[i].status);
        for (var j = 0; j < dataList.length; j++) { 
          gs.log("First Name: " + dataList[j].first_name);
          gs.log("Last Name: " + dataList[j].last_name);
          gs.log("Email: " + dataList[j].email;
          gs.log("Active: " + dataList[j].active;
        }
      }
    }

결과:

    source record id: b29e629877130110f5455d14cd5a99ad
    status: PROCESSED
    First Name: Jane
    Last Name: Doe
    Email: example@servicenow.com
    Active: true
    First Name: John
    Last Name: Deer
    Email: example2@servicenow.com
    Active: true


