CatalogItemVariableSetM2M - スコープ指定

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

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

    CatalogItemVariableSetM2M - create(ブール standardUpdate)

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

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

    この例は、Standard Employee Questions 変数セットを 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. パラメーター
    名前 タイプ 説明
    standardUpdate ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグです。
    有効な値:
    • true:エンジンとワークフローを有効にします。
    • false:エンジンとワークフローを有効にしません。
    表 : 4. 返される内容
    タイプ 説明
    なし

    この例は、iPhone 6s カタログアイテムから Standard Employee Questions 変数セットを削除し、カタログ変数セットテーブル [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(オブジェクト columns, ブール standardUpdate)

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

    表 : 5. パラメーター
    名前 タイプ 説明
    オブジェクト 値を希望する列のセットです。
    standardUpdate ブーリアン エンジンとワークフローの実行を有効にするかどうかを示すフラグです。
    有効な値:
    • 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(オブジェクト attributes)

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

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

    この例は、Standard Employee Questions 変数セットを 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(オブジェクト columnValues, ブール standardUpdate)

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

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

    この例は、iPhone 6s カタログアイテムの Standard Employee Questions 変数セットの順序を更新します。

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