CMDBTransformUtil - グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:53分
  • CMDBTransformUtil スクリプトインクルードは、識別および調整 (IRE) フレームワークを使用して、重複する構成アイテム (CI) の作成を最小限に抑えます。

    IRE フレームワークは、onBefore 変換マップスクリプトで CMDB を更新するときに、許可されたソースからの情報のみを受け入れることで、CI 属性も調整します。このクラスを他のスクリプトで使用することはできません。IRE フレームワークの動作の詳細については、「 CMDB 識別および調整」を参照してください。

    CMDBTransformUtil:CMDBTransformUtil()

    CMDBTransformUtil オブジェクトを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし
    var cmdbUtil = new CMDBTransformUtil();

    CMDBTransformUtil - getError()

    前の identifyAndReconcile() または identifyAndReconcileEnhanced() メソッドの呼び出しによって生成されたエラーを返します。

    このメソッドを onBefore 変換マップスクリプトで使用して、エラーを取得します。hasError() メソッドを使用して、最初に identifyAndReconcile() メソッドまたは identifyAndReconcileEnhanced() メソッドからのエラーを検出します。

    表 : 2. パラメーター
    名前 タイプ 説明
    なし
    表 : 3. 返される内容
    タイプ 説明
    文字列 identifyAndReconcile() または identifyAndReconcileEnhanced() からのエラーメッセージ。
    // Add this code to the onBefore transform map script
    // Call CMDB API to do Identification and Reconciliation of the current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
    
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    スコープ対応

    このメソッドに相当するスコープ対象はありません。

    CMDBTransformUtil - getOutputPayload()

    前の identifyAndReconcile() または identifyAndReconcileEnhanced() メソッド呼び出しからの JSON ペイロードを返します。

    このメソッドは onBefore 変換マップスクリプトで使用します。

    表 : 4. パラメーター
    名前 タイプ 説明
    なし
    表 : 5. 返される内容
    タイプ 説明
    <文字列> 入力文字列内の構成アイテムの結果リストである JSON 形式の文字列。各結果文字列の形式は「items: [{}], relations:[{}]」です。ここで、items および relations リスト内の各アイテムには名前と値のペアが含まれます。

    データタイプ:文字列

    <String>.additionalCommittedItems 現在、値が返されていません。
    <String>.additionalCommittedRelations 現在、値が返されていません。
    <String>.items 作成または更新された CI の説明。

    データタイプ: オブジェクト

    "items": { 
      "additionalRelatedItems": [Array],
      "className": "String",
      "duplicateIndices": [Array],
      "errorCount": Number,
      "errors": [Array],
      "identificationAttempts": [Array],
      "identifierEntrySysId": "String",
      "info": [Array],
      "inputIndices": [Array],
      "maskedAttributes": [Array],
      "operation": "String",
      "relatedItems": [Array],
      "relatedSysIds": [Array],
      "sysId": "String"
    }
    <String>.items.additionalRelatedItems 処理されたものの、入力ペイロードの一部として提供されなかった追加のルックアップおよび関連アイテムに関する情報のリスト。これらのアイテムは部分的ペイロードからのものです。

    この情報は現在返されません。

    データタイプ:オブジェクトのアレイ

    "additionalRelatedItems": [ 
      {
        "className": "String", 
        "inputIndices": [Array], 
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.additionalRelatedItems.className 作成または更新された CI のクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.additionalRelatedItems.inputIndices 対応する入力アイテムのインデックス。トップレベルのアイテムの場合は、整数のリストです。関連アイテムまたはルックアップアイテムの場合は、JSON オブジェクトのリストです。

    データタイプ:数値のアレイまたはオブジェクトのアレイ

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.items.additionalRelatedItems.inputIndices.mainIndex 追加の関連アイテムの CI 親に対応する要求本文 items アレイのインデックス値。

    データタイプ:数値

    <String>.items.additionalRelatedItems.inputIndices.subIndex 追加の関連アイテムに対応する要求本文 items.lookup アレイのインデックス値。

    データタイプ:数値

    <String>.items.additionalRelatedItems.operation 操作のタイプ

    可能な値:

    • INSERT:新しい CI がデータベースに挿入されました。
    • NO_CHANGE:CI の変更は行われませんでした。
    • 更新:既存の CI が更新されました。

    データタイプ:文字列

    <String>.items.additionalRelatedItems.sysId 追加の関連アイテムのSys_id。

    データタイプ:文字列

    <String>.items.className 作成または更新された CI のクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.duplicateIndices 現在のアイテムと重複している CI のインデックスのリスト。

    データタイプ:アレイ

    <String>.items.errorCount エラーの数。

    データタイプ:数値

    <String>.items.errors この CI の処理中に発生したエラーのリスト。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.errors.error CI の処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.items.errors.message エラーに関連するエラーメッセージ。

    データタイプ:文字列

    <String>.items.identificationAttempts CI を識別するために行われた試行のリスト。

    データタイプ:オブジェクトのアレイ

    "identificationAttempts": [
      { 
        "attemptResult": "String", 
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identifierName": "String",
        "searchOnTable": "String" 
      }
    ]
    <String>.items.identificationAttempts.attemptResult CI の識別を試みた結果。

    可能な値:

    • 一致:識別に成功しました。識別子ルールテーブルで、指定された属性と完全に一致する一意の CI が見つかりました。
    • MULTI_MATCH:エラーで識別に失敗しました。指定された属性と照合したときに、識別子ルールテーブルで重複 CI が見つかりました。
    • NO_MATCH:識別に失敗しました。指定された属性に一致する識別子ルールテーブルに CI が見つかりませんでした。
    • スキップ:識別は試行されませんでした。この識別子ルールテーブル検索に必要な属性が指定されていないため、ルールは適用されませんでした。

    データタイプ:文字列

    <String>.items.identificationAttempts.attributes 識別プロセス中に使用された CI ID エントリ属性のリスト。

    データタイプ:アレイ

    属性の名前とタイプは、次のような要求本文データと使用中の識別子によって異なります。

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>.items.identificationAttempts.hybridEntryCiAttributes 現在、値が返されていません。
    <String>.items.identificationAttempts.identifierName この CI 識別試行に使用される識別子ルール。

    データタイプ:文字列

    <String>.items.identificationAttempts.searchOnTable 識別プロセス中に検索されたテーブルの名前。

    データタイプ:文字列

    <String>.items.identifierEntrySysId CI を識別するために使用される識別子ルールのSys_id。

    データタイプ:文字列

    テーブル:識別子エントリ [cmdb_identifier_entry]

    <String>.items.info アイテムの処理に関する追加情報を含むリスト。

    データタイプ:オブジェクトのアレイ

    "info": [
      {
        "code": "String",
        "message": "String",
        "ruleSysId": "String"
      }
    ]
    <String>.items.info.code スキップされた再分類タイプ。
    可能な値:
    • SKIPPED_CLASS_SWITCH
    • SKIPPED_CLASS_DOWNGRADE
    • SKIPPED_CLASS_UPGRADE

    データタイプ:文字列

    <String>.items.info.message 再分類をスキップする理由に関する追加のインサイトを提供するメッセージ。

    データタイプ:文字列

    <String>.items.info.ruleSysId 一致した再分類制限ルールのSys_id。再分類制限ルールのために IRE が再分類をスキップする場合にのみ適用されます。ペイロードまたはグローバルフラグが原因で再分類がスキップされた場合、この値は空です。

    データタイプ:文字列

    <String>.items.inputIndices この CI に対応する要求本文 items アレイの CI のインデックス値。

    データタイプ:アレイ

    <String>.items.maskedAttributes 調整 ルールで定義されているとおりに、権限のないデータソースによる更新がスキップされた属性のリスト。

    データタイプ:アレイ

    <String>.items.relatedItems 処理された関連アイテムに関する情報を提供するリスト。

    データタイプ:オブジェクトのアレイ

    "relatedItems": [
      { 
        "className": "String",
        "errors": [Array],
        "errorCount": Number, 
        "inputIndices": [Array],
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.relatedItems.className 関連アイテムのクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.relatedItems.errors 処理中に発生したエラーのリスト。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.relatedItems.errorCount 処理中に検出されたエラーの数。

    データタイプ:数値

    <String>.items.relatedItems.inputIndices 対応する関連アイテムのインデックス。

    データタイプ:アレイまたは数値

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.items.relatedItems.inputIndices.mainIndex 関連アイテムの CI 親に対応する要求本文 items アレイの整数値。

    データタイプ:数値

    <String>.items.relatedItems.inputIndices.subIndex 関連アイテムに対応する要求本文 items.lookup アレイの整数値。

    データタイプ:数値

    <String>.items.relatedItems.operation 操作のタイプ

    可能な値:

    • INSERT:新しい CI がデータベースに挿入されました。
    • NO_CHANGE:CI の変更は行われませんでした。
    • 更新:既存の CI が更新されました。

    データタイプ:文字列

    <String>.items.relatedSysIds 要求本文 items.lookup アレイの関連アイテム (テーブルルックアップアイテム) のsys_id値のリスト。

    注目値 - null:この関連アイテムのsys_idが特定されませんでした。

    データタイプ:アレイ

    <String>.items.sys_id 更新または作成された CI のSys_id。

    データタイプ:文字列

    <String>.relations 処理された関係に関する情報。

    データタイプ:オブジェクトのアレイ

    "relations":[
      { 
        "className": "String",
        "errorCount": Number,
        "inputIndices": [Array],
        "operation": "String",
        "sysId": "String" 
      }
    ]
    <String>.relations.className この依存関係 CI のSys_class_name。

    サポートされている値:cmdb_rel_ci:CI 関係テーブルのみ。

    データタイプ:文字列

    <String>.relations.errorCount エラーの数。

    データタイプ:数値

    <String>.relations.inputIndices 対応する入力関係のインデックス。

    データタイプ:アレイ

    <String>.relations.operation 実行された操作のタイプ。

    可能な値:

    • 挿入
    • 更新
    • NO_CHANGE

    データタイプ:文字列

    <String>.relations.sysId 依存関係 CI のSys_id。

    データタイプ:文字列

    // Add this code to the onBefore transform map script
    // Call CMDB API to do Identification and Reconciliation of the current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
    
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    スコープ対応

    このメソッドに相当するスコープ対象はありません。

    CMDBTransformUtil - getOutputRecordSysId()

    挿入または更新された構成アイテム (CI) のsys_idを返します。

    このメソッドは onBefore 変換マップスクリプトで使用します。

    表 : 6. パラメーター
    名前 タイプ 説明
    なし
    表 : 7. 返される内容
    タイプ 説明
    文字列 挿入または更新された CI のSys_id。
    // Add this code to the onBefore transform map script
    // Call CMDB API to do Identification and Reconciliation of current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
    
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    スコープ対応

    このメソッドに相当するスコープ対象はありません。

    CMDBTransformUtil - getPayload(オブジェクトソース、オブジェクトマップ、オブジェクトログ)

    指定された入力から生成された JSON ペイロードを返します。

    その後、ペイロードを変更し、 setPayload() メソッドを使用して更新されたペイロードを保存できます。ペイロードを変更して保存したら、 identifyAndReconcile() または identifyAndReconcileEnhanced() を使用してペイロードを処理します。

    表 : 8. パラメーター
    名前 タイプ 説明
    ソース オブジェクト 受信レコードを保持する変換マップスクリプトで利用可能なグローバルオブジェクト。
    マップ オブジェクト 現在の変換マップレコードを保持する変換マップスクリプトで利用可能なマップオブジェクト。
    ログ オブジェクト 変換マップスクリプトで使用可能なログオブジェクト。
    表 : 9. 返される内容
    パラメーター 説明
    <文字列> 入力文字列内の構成アイテムの結果リストである JSON 形式の文字列。

    データタイプ:文字列

    { 
      "additionalCommittedItems": [Array],  
      "additionalCommittedRelations": [Array], 
      "hasError": Boolean, 
      "hasWarning": Boolean,
      "items": [Array],  
      "relations": [Array], 
      "summary": {Object} 
    }
    <String>.additionalCommittedItems 現在のペイロードの IRE 処理中にコミットされたが、現在の入力ペイロードには存在しなかった CI のリスト。

    データタイプ:オブジェクトのアレイ

    "additionalCommittedItems": [
      {
        "className": "String",
        "errorCount": Number,
        "operation": "String",
        "identificationAttempts": [Array],
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloads": [Array],
        "sysId": "String"
      }
    ]
    <String>.additionalCommittedItems.className この追加 CI のSys_class_name。

    データタイプ:文字列

    <String>.additionalCommittedItems.errorCount この追加 CI の処理中に発生したエラーの数。

    データタイプ:数値

    <String>.additionalCommittedItems.errors この追加の CI の処理中に発生したエラーを説明するオブジェクトのアレイ。

    データタイプ:アレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedItems.errors.error 追加 CI の処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.additionalCommittedItems.errors.message 追加の CI の処理中にエラーメッセージが表示されました。

    データタイプ:文字列

    <String>.additionalCommittedItems.identificationAttempts オブジェクトのアレイ。各オブジェクトは、この追加の CI を識別する試みを記述します。
    データタイプ:オブジェクトのアレイ
    "identificationAttempts": [
      {
        "attemptResult": "String",
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identiferName": "String",
        "searchOnTable": [Array]
      }
    ]
    <String>.additionalCommittedItems.identificationAttempts.attemptResult この追加の CI 識別試行の結果。

    データタイプ:文字列

    可能な値:
    • 一致:識別に成功しました。識別子ルールテーブルで、指定された属性と完全に一致する一意の CI が見つかりました。
    • MULTI_MATCH:エラーで識別に失敗しました。指定された属性と照合したときに、識別子ルールテーブルで重複 CI が見つかりました。
    • NO_MATCH:識別に失敗しました。指定された属性に一致する識別子ルールテーブルに CI が見つかりませんでした。
    • スキップ:識別は試行されませんでした。この識別子ルールテーブル検索に必要な属性が指定されていないため、ルールは適用されませんでした。
    <String>.additionalCommittedItems.identificationAttempts.attributes この追加の CI 識別試行中に使用される CI ID エントリ属性。

    データタイプ:アレイ

    属性の名前とタイプは、次のような要求本文データと使用中の識別子によって異なります。

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>.additionalCommittedItems.identificationAttempts.hybridEntryCiAttributes この追加の CI 識別試行中に使用される CI ID エントリ属性のアレイ。

    データタイプ:アレイ

    属性の名前とタイプは、次のような要求本文データと使用中の識別子によって異なります。

    "hybridEntryCiAttributes": [
      "name": "String",
      "serial_number": "String"
    ]
    <String>.additionalCommittedItems.identificationAttempts.identifierName この追加の CI 識別の試行に使用される識別子ルール。

    データタイプ:文字列

    <String>.additionalCommittedItems.identificationAttempts.searchOnTable この追加の CI 識別試行が検索されたテーブルの名前。

    データタイプ:文字列

    <String>.additionalCommittedItems.identifierEntrySysId この追加の CI を識別するために使用される識別子ルールのSys_id。

    注目の値 - 不明:この追加の CI の識別に失敗しました。詳細については、「errors」を参照してください。

    <String>.additionalCommittedItems.inputIndices この追加 CI に対応する要求本文 items アレイの CI のインデックス値。

    データタイプ:数値の配列

    "inputIndices": [
      {
        Number
      }
    ]
    <String>.additionalCommittedItems.markers 内部使用用のマーカー値。

    データタイプ:アレイ

    "markers": []
    <String>.additionalCommittedItems.mergedPayloads この追加 CI の処理中に結合された CMDB IRE 部分的ペイロード [cmdb_ire_partial_payloads] テーブルの部分的ペイロードのSys_id値。

    データタイプ:アレイ

    "mergedPayloadIds": [
      "String"
    ]
    <String>.additionalCommittedItems.operation この追加 CI に対して実行された操作。

    データタイプ:文字列

    可能な値:
    • 削除:既存の CI がターゲットテーブルから削除されます。
    • INSERT:追加の CI が新しいレコードとしてターゲットテーブルに挿入されます。
    • NO_CHANGE:追加の CI に対して操作は実行されません。
    • 更新:ターゲットテーブルの既存の CI が更新されます。
    • UPDATE_WITH_DOWNGRADE:ターゲットテーブルの既存の CI が更新され、そのクラスがより汎用的なクラス (先祖クラス) に変更されます。
    • UPDATE_WITH_SWITCH:ターゲットテーブルの既存の CI が更新され、そのクラスが先祖または子孫クラスではない別のクラスに変更されます。
    • UPDATE_WITH_UPGRADE:ターゲットテーブルの既存の CI が更新され、そのクラスがより特殊なクラス (子孫クラス) に変更されます。
    <String>.additionalCommittedItems.sysId 識別によってこの追加 CI のSys_idが見つかりました。

    データタイプ:文字列

    注目の値 - 不明:この追加の CI の識別に失敗しました。詳細については、「errors」を参照してください。

    <String>.additionalCommittedItems.warnings この追加 CI の処理中に発生した警告の説明。

    データタイプ:オブジェクトのアレイ

    "warnings": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedItems.warnings.error この追加 CI の処理中に発生した警告のタイプ。

    データタイプ:文字列

    <String>.additionalCommittedItems.warnings.message この追加 CI の処理中に警告メッセージが表示されました。

    データタイプ:文字列

    <String>.additionalCommittedRelations 挿入または更新する要求本文 relations リストに含まれていなかった依存関係性 CI の説明。

    データタイプ:オブジェクトのアレイ

    "additionalCommittedRelations": [
      {
        "className": "String",
        "inputIndices": [Array],
        "markers": [Array],
        "mergedPayloadIds": [Array],
        "operation": "String"
      }
    ]
    <String>.additionalCommittedRelations.className この追加の依存関係 CI のsys_class_name。

    データタイプ:文字列

    サポートされている値:cmdb_rel_ci:CI 関係テーブルのみ。

    <String>.additionalCommittedRelations.errorCount この追加の依存関係 CI の処理中に発生したエラーの数。

    データタイプ:数値

    <String>.additionalCommittedRelations.errors この追加の依存関係 CI の処理中に発生したエラーの説明。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.additionalCommittedRelations.errors.error 追加の依存関係性 CI の処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.additionalCommittedRelations.errors.message この追加の依存関係性 CI の処理中にエラーメッセージが発生しました。

    データタイプ:文字列

    <String>.additionalCommittedRelations.inputIndices この追加の依存関係 CI に対応する要求本文 relations アレイ内の依存関係 CI オブジェクトのインデックス値。

    データタイプ:アレイ

    "inputIndices": [
      Number
    ]
    <String>.additionalCommittedRelations.markers 内部使用用のマーカー値。

    データタイプ:アレイ

    "markers": []
    <String>.additionalCommittedRelations.mergedPayloadIds この CI に対して結合された CMDB IRE 部分のペイロード [cmdb_ire_partial_payloads] テーブルの部分的ペイロードのSys_id値。この追加の依存関係 CI の処理中に結合された値。

    データタイプ:アレイ

    "mergedPayloadIds": [
      "String"
    ]
    <String>.additionalCommittedRelations.operation 追加の依存関係性 CI に対して実行された操作。
    可能な値:
    • INSERT:依存関係 CI が新しいレコードとしてターゲットテーブルに挿入されます。
    • INSERT_AS_INCOMPLETE:依存関係性 CI にエラーがあり、CMDB IRE 不完全ペイロード [cmdb_ire_incomplete_payloads] テーブルに挿入されます。
    • INSERT_AS_PARTIAL:依存関係 CI にエラーがあり、CMDB IRE 部分のペイロード [cmdb_ire_partial_payloads] テーブルに挿入されます。
    • NO_CHANGE:依存関係 CI に対して操作は実行されません。
    • 更新:ターゲットテーブルの既存の依存関係 CI が更新されます。

    データタイプ:文字列

    <String>.hasError アイテムまたは関係にエラーがあるかどうかを示すフラグ。

    データタイプ:ブーリアン

    <String>.hasWarning アイテムまたは関係に警告があるかどうかを示すフラグ。

    データタイプ:ブーリアン

    <String>.items 作成または更新された CI の説明。

    データタイプ:オブジェクトのアレイ

    "items": [
      {  
        "additionalRelatedItems": [Array],
        "className": "String",
        "duplicateIndices": [Array],
        "errorCount": Number, 
        "errors": [Array], 
        "identificationAttempts": [Array], 
        "identifierEntrySysId": "String",  
        "incompleteSysIds": "String",
        "info": [Array],
        "inputIndices": [Array], 
        "maskedAttributes": [Array],
        "operation": "String", 
        "partialSysIds": "String", 
        "relatedItems": [Array], 
        "relatedSysIds": [Array], 
        "sysId": "String" 
      }
    ]
    <String>.items.additionalRelatedItems 処理されたものの、入力ペイロードの一部として提供されなかった追加のルックアップおよび関連アイテムに関する情報。これらのアイテムは部分的ペイロードからのものです。

    データタイプ:オブジェクトのアレイ

    "additionalRelatedItems": [ 
      {
        "className": "String", 
        "inputIndices": [Array],
        "mergedPayloadIds": [Array], 
        "operation": "String",
        "sysId": "String"
      }
    ]
    <String>.items.additionalRelatedItems.className 作成または更新された CI のクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.additionalRelatedItems.inputIndices この関連アイテムに対応する要求本文 items アレイの CI のインデックス値。

    データタイプ:数値の配列

    <String>.items.additionalRelatedItems.mergedPayloadIds 関連アイテムに結合された部分的ペイロードのsys_idsのリスト。

    データタイプ:アレイ

    テーブル:CMDB IRE 部分のペイロード [cmdb_ire_partial_payloads]

    <String>.items.additionalRelatedItems.operation 操作のタイプ

    可能な値:

    • INSERT:新しい CI がデータベースに挿入されました。
    • NO_CHANGE:CI の変更は行われませんでした。
    • 更新:既存の CI が更新されました。

    データタイプ:文字列

    <String>.items.additionalRelatedItems.sysId 更新または作成された CI のSys_id。

    データタイプ:文字列

    <String>.items.className 作成または更新された CI のクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.duplicateIndices 現在のアイテムと重複している CI のインデックスのリスト。

    データタイプ:アレイ

    <String>.items.errorCount アイテムの処理中に発生したエラーの数。

    データタイプ:数値

    <String>.items.errors この CI の処理中に発生したエラーのリスト。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.errors.error CI の処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.items.errors.message エラーに関連するエラーメッセージ。

    データタイプ:文字列

    <String>.items.identificationAttempts CI を識別するために行われた試行のリスト。

    データタイプ:オブジェクトのアレイ

    "identificationAttempts": [
      { 
        "attemptResult": "String", 
        "attributes": [Array],
        "hybridEntryCiAttributes": [Array],
        "identifierName": "String",
        "searchOnTable": "String" 
      }
    ]
    <String>.items.identificationAttempts.attemptResult CI の識別を試みた結果。

    可能な値:

    • 一致:識別に成功しました。識別子ルールテーブルで、指定された属性と完全に一致する一意の CI が見つかりました。
    • MULTI_MATCH:エラーで識別に失敗しました。指定された属性と照合したときに、識別子ルールテーブルで重複 CI が見つかりました。
    • NO_MATCH:識別に失敗しました。指定された属性に一致する識別子ルールテーブルに CI が見つかりませんでした。
    • スキップ:識別は試行されませんでした。この識別子ルールテーブル検索に必要な属性が指定されていないため、ルールは適用されませんでした。

    データタイプ:文字列

    <String>.items.identificationAttempts.attributes 識別プロセス中に使用された CI ID エントリ属性のリスト。

    データタイプ:アレイ

    属性の名前とタイプは、次のような要求本文データと使用中の識別子によって異なります。

    "attributes": [
      "serial_number": "String",
      "serial_number_type": "String",
    ]
    <String>items.identificationAttempts.hybridEntryCiAttributes 識別プロセス中に使用された CI ID エントリ属性のリスト。

    データタイプ:アレイ

    属性の名前とタイプは、次のような要求本文データと使用中の識別子によって異なります。

    "hybridEntryCiAttributes": [
      "name": "String",
      "serial_number": "String"
    ]
    <String>.items.identificationAttempts.identifierName この CI 識別試行に使用される識別子ルール。

    データタイプ:文字列

    <String>.items.identificationAttempts.searchOnTable 識別プロセス中に検索されたテーブルの名前。

    データタイプ:文字列

    <String>.items.identifierEntrySysId CI を識別するために使用される識別子ルールのSys_id。

    データタイプ:文字列

    テーブル:識別子エントリ [cmdb_identifier_entry]

    <String>.items.incompleteSysIds アイテムにエラーがあり、不完全なペイロードとして保存された場合、このパラメーターには CMDB IRE 不完全なペイロード [cmdb_ire_incomplete_payloads] テーブルのレコードのsys_idが含まれます。

    データタイプ:文字列

    <String>.items.info アイテムの処理に関する追加情報。

    データタイプ:オブジェクトのアレイ

    "info": [
      {
        "code": "String",
        "message": "String",
        "ruleSysId": "String"
      }
    ]
    <String>.items.info.code スキップされた再分類タイプ。
    可能な値:
    • SKIPPED_CLASS_DOWNGRADE
    • SKIPPED_CLASS_SWITCH
    • SKIPPED_CLASS_UPGRADE

    データタイプ:文字列

    <String>.items.info.message 再分類をスキップする理由に関する追加のインサイトを提供するメッセージ。

    データタイプ:文字列

    <String>.items.info.ruleSysId 一致した再分類制限ルールのSys_id。再分類制限ルールのために IRE が再分類をスキップする場合にのみ適用されます。ペイロードまたはグローバルフラグが原因で再分類がスキップされた場合、この値は空です。

    データタイプ:文字列

    <String>.items.inputIndices 対応する入力 CI のインデックス。トップレベルのアイテムの場合は、整数のリストです。関連 CI またはルックアップ CI の場合は、JSON オブジェクトのリストです。

    データタイプ:数値の配列

    <String>.items.maskedAttributes 調整 ルールで定義されているとおりに、権限のないデータソースによる更新がスキップされた属性のリスト。

    データタイプ:アレイ

    <String>.items.operation 実行された操作。

    可能な値:

    • INSERT:新しい CI がデータベースに挿入されました。
    • INSERT_AS_INCOMPLETE:アイテムはcmdb_ire_incomplete_payloadsテーブルに保存されました。
    • INSERT_AS_PARTIAL:アイテムはcmdb_ire_partial_payloadsテーブルに保存されました。
    • 更新:既存の CI が更新されました。
    • UPDATE_WITH_DOWNGRADE:CI が更新され、クラスがより汎用的なクラス (先祖クラス) に変更されました。
    • UPDATE_WITH_SWITCH:CI が更新され、クラスが先祖でも子孫でもないクラスに変更されました。
    • UPDATE_WITH_UPDRADE:CI が更新され、クラスがより特殊なクラス (子孫クラス) に変更されました。

    データタイプ:文字列

    <String>.items.partialSysIds アイテムにエラーがあり、部分的ペイロードとして保存された場合、このパラメーターには部分的ペイロードレコードのsys_idが含まれます。

    データタイプ:文字列

    <String>.items.relatedItems 要求本文 items.lookup アレイからの関連 CI (テーブルルックアップ CI) を記述する JSON オブジェクトのリスト。

    データタイプ:オブジェクトのアレイ

    "relatedItems": [
      { 
        "className": "String",
        "errors": [Array],
        "errorCount": Number, 
        "incompleteSysIds": [Array],
        "inputIndices": [Array],
        "mergePayloadIds": [Array],
        "operation": "String",
        "partialSysIds": [Array], 
        "sysId": "String",
        "warningCount": Number,
        "warnings": [Array]
      }
    ]
    <String>.items.relatedItems.className 関連アイテムのクラス/テーブル名 (sys_class_name)。

    データタイプ:文字列

    <String>.items.relatedItems.errors 関連アイテムの処理中に発生したエラーのリスト。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.relatedItems.errors.error 関連アイテムの処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.items.relatedItems.errors.message エラーに関連するエラーメッセージ。

    データタイプ:文字列

    <String>.items.relatedItems.errorCount 関連アイテムの処理中に検出されたエラーの数。

    データタイプ:数値

    <String>.items.relatedItems.incompleteSysIds 関係にエラーがあり、不完全なペイロードとして保存された場合、この値は CMDB IRE 不完全なペイロード [cmdb_ire_incomplete_payloads] テーブル内のレコードのsys_idです。

    データタイプ:文字列

    <String>.items.relatedItems.inputIndices 対応する入力アイテムのインデックス。トップレベルのアイテムの場合は、整数のリストです。関連アイテムまたはルックアップアイテムの場合は、JSON オブジェクトのリストです。

    データタイプ:数値のアレイまたはオブジェクトのアレイ

    "inputIndices": [
      { 
       "mainIndex": Number, 
       "subIndex": Number 
      }
    ]
    <String>.items.relatedItems.inputIndices.mainIndex 関連アイテムの CI 親に対応する要求本文 items アレイのインデックス値。

    データタイプ:数値

    <String>.items.relatedItems.inputIndices.subIndex 関連アイテムに対応する要求本文 items.lookup アレイのインデックス値。

    データタイプ:数値

    <String>.items.relatedItems.mergedPayloadIds 処理中に CI に結合された部分的ペイロードのsys_idsのリスト。

    データタイプ:アレイ

    <String>.items.relatedItems.operation 実行された操作。

    可能な値:

    • INSERT:新しい関連 CI がデータベースに挿入されました。
    • INSERT_AS_INCOMPLETE:アイテムはcmdb_ire_incomplete_payloadsテーブルに保存されました。
    • INSERT_AS_PARTIAL:アイテムはcmdb_ire_partial_payloadsテーブルに保存されました。
    • NO_CHANGE:関連する CI の変更は行われませんでした。
    • 更新:既存の関連 CI が更新されました。
    • UPDATE_WITH_DOWNGRADE:関連 CI が更新され、クラスがより汎用的なクラス (先祖クラス) に変更されました。
    • UPDATE_WITH_SWITCH:関連 CI が更新され、クラスが先祖でも子孫でもないクラスに変更されました。
    • UPDATE_WITH_UPDRADE:関連 CI が更新され、クラスがより特殊化されたクラス (子孫クラス) に変更されました。

    データタイプ:文字列

    <String>.items.relatedItems.partialSysIds 関連アイテムにエラーがあり、部分的ペイロードとして保存された場合、CMDB IRE 部分的ペイロード [cmdb_ire_partial_payloads] テーブル内の関連レコードのsys_idsのリストが含まれます。

    データタイプ:アレイ

    <String>.items.relatedItems.sysId 関連アイテムのSys_id。

    データタイプ:文字列

    <String>.items.relatedItems.warningCount 関連アイテムの処理時に発生した警告の数。

    データタイプ:数値

    <String>.items.relatedItems.warnings 関連アイテムの処理中に発生した警告の説明。

    データタイプ:オブジェクトのアレイ

    "warnings": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.items.relatedItems.warnings.error 関連アイテムの処理中に発生した警告のタイプ。

    データタイプ:文字列

    <String>.items.relatedItems.warnings.message 警告に関連付けられたメッセージ。

    データタイプ:文字列

    <String>.items.relatedSysIds 関連アイテムのルックアップベースの識別中に使用された CI のsys_id値のリスト。

    データタイプ:文字列

    <String>.items.sys_id 更新または作成された CI のSys_id。

    データタイプ:文字列

    <String>.relations 要求本文 relations アレイからの依存関係 CI の説明。

    データタイプ:オブジェクトのアレイ

    "relations": [ 
      { 
        "className": "String",
        "errorCount": Number,
        "errors": [Array],
        "incompleteSysIds": "String",
        "inputIndices": [Array],
        "operation": "String",
        "partialSysIds": "String",
        "sysId": "String" 
      }
    ]
    <String>.relations.className この依存関係 CI のSys_class_name。

    サポートされている値:cmdb_rel_ci:CI 関係テーブルのみ。

    データタイプ:文字列

    <String>.relations.errorCount 依存関係 CI の処理時に発生したエラーの数。

    データタイプ:数値

    <String>.relations.errors この依存関係 CI の処理中に発生したエラーを説明するリスト。

    データタイプ:オブジェクトのアレイ

    "errors": [
      {
        "error": "String",
        "message": "String"
      }
    ]
    <String>.relations.errors.error 依存関係 CI の処理中に発生したエラーのタイプ。

    データタイプ:文字列

    <String>.relations.errors.message この依存関係性 CI の処理中にエラーメッセージが発生しました。

    データタイプ:文字列

    <String>.relations.incompleteSysIds 関係にエラーがあり、不完全なペイロードとして保存された場合、この値は CMDB IRE 不完全なペイロード [cmdb_ire_incomplete_payloads] テーブル内のレコードのsys_idです。

    データタイプ:文字列

    <String>.relations.inputIndices この依存関係 CI に対応する要求本文 relations アレイ内の依存関係 CI オブジェクトのインデックス。

    データタイプ:アレイ

    <String>.relations.operation 実行された操作のタイプ。

    可能な値:

    • INSERT:依存関係 CI が新しいレコードとしてターゲットテーブルに挿入されました。
    • INSERT_AS_INCOMPLETE:依存関係 CI にエラーがあり、CMDB IRE 不完全ペイロード [cmdb_ire_incomplete_payloads] テーブルに挿入されました。
    • INSERT_AS_PARTIAL:依存関係 CI にエラーがあり、CMDB IRE 部分のペイロード [cmdb_ire_partial_payloads] テーブルに挿入されました。
    • NO_CHANGE:操作は実行されませんでした。
    • 更新:ターゲットテーブルの既存の依存関係 CI が更新されました。

    データタイプ:文字列

    <String>.relations.partialSysIds 関係にエラーがあり、部分的ペイロードとして保存された場合、この値は CMDB IRE 部分的ペイロード [cmdb_ire_partial_payloads] テーブル内のレコードのsys_idです。

    データタイプ:文字列

    <String>.relations.sysId 依存関係 CI のSys_id。

    データタイプ:文字列

    <String>.summary クラスごとに挿入されたアイテム数、更新されたアイテム数などの統計情報を提供する JSON プロパティのリスト。

    データタイプ:アレイ

    <String>.summary.<class_name> 特定のクラスの統計情報。

    データタイプ: オブジェクト

    <class_name>: {
     "additionalInsertedItemCount": Number, 
     "errorCount": Number,
     "incompleteItemCount": Number,
     "insertedItemCount": Number,
     "partialItemCount": Number,
     "skippedItemCount": Number,
     "unchangedItemCount": Number,
     "updatedItemCount": Number,
     "warningCount": Number 
    }
    <String>.summary.<class_name>.additionalInsertedItemCount 部分的ペイロードの処理のために挿入されたアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.errorCount アイテムの処理時に発生したエラーの数。

    データタイプ:数値

    <String>.summary.<class_name>.incompleteItemCount CMDB IRE 不完全ペイロード [cmdb_ire_incomplete_payloads] テーブルに挿入されたアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.insertedItemCount 作成されたアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.partialItemCount 部分的ペイロードテーブル [cmdb_ire_partial_payloads] に保存されているアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.skippedItemCount スキップされたアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.unchangedItemCount エントリはあったが変更されていないアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.updatedItemCount 更新されたアイテムの数。

    データタイプ:数値

    <String>.summary.<class_name>.warningCount 処理時に警告を生成したアイテムの数。

    データタイプ:数値

    このコード例は、ImportSet のペイロードを取得する方法を示しています。ここでペイロードを更新し、新しいペイロードを設定してから、 cmdbUtil.identifyAndReconcileEnhanced() メソッドを呼び出してペイロードを処理します。

    // Add this code to the onBefore transform map script
    // Ability to modify the payload using get and set APIs
    // Call cmdbUtil API to do Identification and Reconciliation of current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    var payload = cmdbUtil.getPayload(source, map, log);
    // Modify the payload here
    cmdbUtil.setPayload(payload);
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
     
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    CMDBTransformUtil - hasError()

    前の identifyAndReconcile() または identifyAndReconcileEnhanced() メソッドの呼び出しでエラーが発生したかどうかを判定します。

    このメソッドは onBefore 変換マップスクリプトで使用します。

    表 : 10. パラメーター
    名前 タイプ 説明
    なし
    表 : 11. 返される内容
    タイプ 説明
    ブーリアン 前に呼び出された identifyAndReconcile() または identifyAndReconcileEnhanced() メソッドでエラーが発生したかどうかを示すフラグ。
    可能な値:
    • true:エラーが発生しました
    • false:エラーは発生しませんでした
    // Add this code to the onBefore transform map script
    // Call CMDB API to do Identification and Reconciliation of current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
    
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    スコープ対応

    このメソッドに相当するスコープ対象はありません。

    CMDBTransformUtil - identifyAndReconcile(オブジェクトソース、オブジェクトマップ、オブジェクトログ)

    構成管理データベース (CMDB)の構成アイテム (CI) を挿入または更新します。

    このメソッドは onBefore 変換マップスクリプトで使用します。変換に依存して構成アイテムレコードを挿入または更新する代わりにこの方法を使用すると、CMDB 内の重複エントリーが減少します。詳細については、「 インポートセットへの CI 識別および調整の適用」を参照してください。

    変換によってレコードが 2 回目に追加または更新されないようにするには、 ignore = true を設定します。

    表 : 12. パラメーター
    名前 タイプ 説明
    ソース オブジェクト 受信レコードを保持する変換マップスクリプトで利用可能なグローバルオブジェクト。
    マップ オブジェクト 現在の変換マップレコードを保持する変換マップスクリプトで利用可能なマップオブジェクト。
    ログ オブジェクト 変換マップスクリプトで使用可能なログオブジェクト。
    表 : 13. 返される内容
    タイプ 説明
    なし

    このコード例は、 identifyAndReconcile() メソッドを呼び出して入力ペイロードの現在の行を処理する方法を示しています。

    // Add this code to the onBefore transform map script
    // Call CMDBTransformUtil API to do Identification and Reconciliation of the current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.identifyAndReconcile(source, map, log);
    ignore = true;

    CMDBTransformUtil - identifyAndReconcileEnhanced(オブジェクトソース、オブジェクトマップ、オブジェクトログ)

    構成管理データベース (CMDB)の構成アイテム (CI) を挿入または更新します。

    このメソッドは、 CMDBTransformUtil.identifyAndReconcile() メソッドの機能を提供するだけでなく、以下もサポートしています。

    • 部分的ペイロードの処理
    • 部分的なコミットの処理
    • ペイロード内の重複アイテムの削除
    • 出力サマリーを生成しています

    識別および調整の詳細、およびこのメソッドで使用されるデータの詳細な説明については、「 識別および調整 (IRE)」を参照してください。

    表 : 14. パラメーター
    名前 タイプ 説明
    ソース オブジェクト 受信レコードを保持する変換マップスクリプトで利用可能なグローバルオブジェクト。
    マップ オブジェクト 現在の変換マップレコードを保持する変換マップスクリプトで利用可能なマップオブジェクト。
    ログ オブジェクト 変換マップスクリプトで使用可能なログオブジェクト。
    表 : 15. 返される内容
    タイプ 説明
    なし

    このコード例は、 identifyAndReconcileEnhanced() メソッドを呼び出して渡されたペイロードを処理する方法を示しています。

    // Add this code to the onBefore transform map script
    // Call CMDBTransformUtil API to do Identification and Reconciliation
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;

    CMDBTransformUtil - logTransformStats(オブジェクトログ)

    挿入、更新、スキップ、またはエラーが発生した構成アイテム (CI) の数をログに記録します。

    このメソッドは、onComplete 変換マップスクリプトで使用します。

    表 : 16. パラメーター
    名前 タイプ 説明
    ログ オブジェクト 変換マップスクリプトで使用可能なログオブジェクト。
    表 : 17. 返される内容
    タイプ 説明
    なし
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.logTransformStats(log);

    スコープ対応

    このメソッドに相当するスコープ対象はありません。

    CMDBTransformUtil - setDataSource(文字列ソース)

    identifyAndReconcile() または identifyAndReconcileEnhanced() メソッドが呼び出されたときに使用するデータソースを設定します。

    このメソッドは onBefore 変換マップスクリプトで使用します。このメソッドが呼び出されない場合、デフォルト値は ImportSet です。

    表 : 18. パラメーター
    名前 タイプ 説明
    ソース 文字列 ソース構成アイテムレコードのデータソース。
    表 : 19. 返される内容
    タイプ 説明
    なし
    // Add this code to the onBefore transform map script
    // Call CMDB API to do Identification and Reconciliation of current row
    var cmdbUtil = new CMDBTransformUtil();
    cmdbUtil.setDataSource('ImportSet');
    cmdbUtil.identifyAndReconcileEnhanced(source, map, log);
    ignore = true;
    
    if (cmdbUtil.hasError()) {
      var errorMessage = cmdbUtil.getError();
      log.error(errorMessage);
    } else {
      log.info('IE Output Payload: ' + cmdbUtil.getOutputPayload());
      log.info('Imported CI: ' + cmdbUtil.getOutputRecordSysId());
    }

    スコープ対応

    このメソッドに相当するスコープ対象はありません。