---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

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(文字列 transformDefinitionId, ブール値 verboseLogging, 文字列 source, 数値 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:ログ記録とインポートセット行の作成を有効にします。 * false:ログ記録とインポートセット行の作成を有効にしません。 {#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\] です。 データタイプ：文字列 |
| status | 処理済みやエラーなどの変換のステータス。 データタイプ：文字列 |
[表 : 3. 返される内容]

{#RTETrans-transform_A__table_ysb_bq2_jtb}  
次のコード例は、ユーザー \[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


