CatalogItemVariableSetM2M - スコープ指定

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:9分
  • CatalogItemVariableSetM2M API は、スクリプトを使用してサービスカタログアイテム変数セットを多対多 (M2M) で作成および変更できるようにするメソッドを提供します。

    この API は sn_sc 名前空間で実行されます。

    CatalogItemVariableSetM2M - create(ブール値 standardUpdate)

    定義されたカタログアイテム変数セット M2M を挿入します。

    表 : 1. パラメーター
    名前 タイプ 説明
    標準更新 ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグ。
    有効な値:
    • true:エンジンとワークフローを有効にします。
    • false:エンジンとワークフローを有効にしません。
    表 : 2. 返される内容
    タイプ 説明
    文字列 挿入された変数レコードのSys_id。

    この例では、標準従業員の質問変数セットを iPhone 6s カタログアイテムに追加し、それらをカタログ変数セットテーブル [io_set_item] にリンクするレコードを作成します。

    var cat_item_sys_id = 'bd6fa75a4f334200086eeed18110c79e'; // catalog item - iPhone 6s
    var variable_set_sys_id = 'e01cab1a4f334200086eeed18110c71f'; // variable set - Standard Employee Questions
    var app_scope = 'global'; // sys_id id in case of scoped app
    var varset = new sn_sc.CatalogItemVariableSetM2M();
    var attr = {
        'variable_set': variable_set_sys_id, // required
        'sc_cat_item': cat_item_sys_id, // required
        'sys_scope': app_scope, // optional
        'order': 10 // optional
    };
    varset.setAttributes(attr);
    var m2mRec = varset.create(true);
    gs.info('Variable set added to catalog item and M2M record created in table io_set_item with sys_id ' + m2mRec);

    出力:

    Variable set added to catalog item and M2M record created in table io_set_item with sys_id c5c87af187eb30103a730f2d0ebb3578

    CatalogItemVariableSetM2M - deleteRecord(ブール値 standardUpdate)

    定義されたカタログアイテム変数セット M2M を削除します。

    表 : 3. パラメーター
    名前 タイプ 説明
    標準更新 ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグ。
    有効な値:
    • true:エンジンとワークフローを有効にします。
    • false:エンジンとワークフローを有効にしません。
    表 : 4. 返される内容
    タイプ 説明
    なし

    この例では、iPhone 6s カタログアイテムから標準従業員の質問変数セットを削除し、カタログ変数セットテーブル [io_set_item] 内のそれらをリンクするレコードを削除します。

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.addQuery('variable_set', 'e01cab1a4f334200086eeed18110c71f'); // variable set - Standard Employee Questions
    vset.query();
    if (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        varset.deleteRecord(true);  
    }

    CatalogItemVariableSetM2M - read(オブジェクト列, ブール値 standardUpdate)

    カタログアイテム変数セット M2M 属性値のマッピングを返します。

    表 : 5. パラメーター
    名前 タイプ 説明
    columns オブジェクト 値が必要な列のセット。
    標準更新 ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグ。
    有効な値:
    • true:エンジンとワークフローを有効にします。
    • false:エンジンとワークフローを有効にしません。
    表 : 6. 返される内容
    タイプ 説明
    オブジェクト 列名を値にマッピングするオブジェクト。

    この例では、iPhone 6s カタログアイテムで使用されるすべての変数セットを読み取ります。

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.query();
    while (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        //add the fields you want to read from the record
        var attr = {
            'sys_name': '', // optional
            'sys_scope': '', // optional
            'order': '' // optional
        };
        var m2mRec = varset.read(attr, true);
        gs.info(JSON.stringify(m2mRec));
    }

    出力:

    {"sys_name":"HTML Description.iPhone 6s","sys_scope":"global","order":"10"}
    {"sys_name":"Standard Employee Questions.iPhone 6s","sys_scope":"global","order":"20"}
    

    CatalogItemVariableSetM2M:setAttributes(オブジェクト属性)

    このカタログアイテム変数セット M2M の属性値を定義します。

    表 : 7. パラメーター
    名前 タイプ 説明
    attributes オブジェクト 列名を値にマッピングするオブジェクト。
    表 : 8. 返される内容
    タイプ 説明
    なし

    この例では、標準従業員の質問変数セットを iPhone 6s カタログアイテムに追加し、カタログ変数セットテーブル [io_set_item] にレコードを作成します。

    var cat_item_sys_id = 'bd6fa75a4f334200086eeed18110c79e'; // catalog item - iPhone 6s
    var variable_set_sys_id = 'e01cab1a4f334200086eeed18110c71f'; // variable set - Standard Employee Questions
    var app_scope = 'global'; // sys_id id in case of scoped app
    var varset = new sn_sc.CatalogItemVariableSetM2M();
    var attr = {
        'variable_set': variable_set_sys_id,
        'sc_cat_item': cat_item_sys_id,
        'sys_scope': app_scope,
        'order': 10
    };
    varset.setAttributes(attr);
    var m2mRec = varset.create(true);
    gs.info('Variable set added to catalog item and M2M record created in table io_set_item with sys_id ' + m2mRec);

    出力:

    Variable set added to catalog item and M2M record created in table io_set_item with sys_id c5c87af187eb30103a730f2d0ebb3578

    CatalogItemVariableSetM2M - update(Object columnValues, Boolean standardUpdate)

    現在のカタログアイテム変数セット M2M を設定した値で更新します。

    表 : 9. パラメーター
    名前 タイプ 説明
    列値 オブジェクト 列名を値にマッピングするオブジェクト。
    標準更新 ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグ。
    有効な値:
    • true:エンジンとワークフローを有効にします。
    • false:エンジンとワークフローを有効にしません。
    表 : 10. 返される内容
    タイプ 説明
    なし

    この例では、iPhone 6s カタログアイテムの標準従業員の質問変数セットの順序を更新します。

    var vset = new GlideRecord('io_set_item');
    vset.addQuery('sc_cat_item', 'bd6fa75a4f334200086eeed18110c79e'); // catalog item - iPhone 6s
    vset.addQuery('variable_set', 'e01cab1a4f334200086eeed18110c71f'); // variable set - Standard Employee Questions
    vset.query();
    if (vset.next()) {
        var varset = new sn_sc.CatalogItemVariableSetM2M(vset.getUniqueValue()); // pass sys_id of io_set_item record
        var attr = {
            'order': '30' // update order to 30
        };
        varset.update(attr, true);
        var readAttr = {
            'sys_name': '',
            'order': '' 
        };
        var m2mRec = varset.read(readAttr, true); // read the record to confirm the update 
        gs.info(JSON.stringify(m2mRec));
    }

    出力:

    {"sys_name":"Standard Employee Questions.iPhone 6s","order":"30"}