---
sourceDocument: Xanadu API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# CatItem - スコープ指定

# CatItem - スコープ指定 {#ariaid-title1}

* リリースバージョン: Xanadu
* 
* 更新日 2024年08月01日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：26分

CatItem API には、スクリプトを使用してサービスカタログアイテムを作成および変更できるメソッドが用意されています。

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

## CatItem - availableForUserCriteria(文字列 action, アレイ criteriaIDs) {#ariaid-title2}

Available For ユーザー基準を現在のカタログアイテムに追加します。
{#r_CIS-availableForUserCriteria_S_A__table_mbk_f5f_vz__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| action | 文字列 | 実行するアクション。 * <kbd class="ph userinput">add</kbd>：ユーザー基準を \[利用可能\] リストに追加します。 * <kbd class="ph userinput">delete</kbd>：ユーザー基準を \[利用可能\] リストから削除します。 {#r_CIS-availableForUserCriteria_S_A__ul_gc4_bs4_kpb} |
| criteriaIDs | アレイ | ユーザー基準 sys_id のアレイ |
[表 : 1. パラメーター]

{#r_CIS-availableForUserCriteria_S_A__table_mbk_f5f_vz} {#r_CIS-availableForUserCriteria_S_A__table_nbk_f5f_vz__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 2. 返される内容]

{#r_CIS-availableForUserCriteria_S_A__table_nbk_f5f_vz}  
この例は、指定された Available For ユーザー基準を追加する方法を示しています。

    var item = new sn_sc.CatItem("31bea3d53790200044e0bfc8bcbe5dec");
    item.availableForUserCriteria("add", ["0c441abbc6112275000025157c651c89"]);

## CatItem - canViewInDomain() {#ariaid-title3}

選択されたドメイン (ドメインピッカーで選択されたドメイン) で、現在のカタログアイテムが表示可能かどうかを検証します。
グローバルドメインのカタログアイテムは、すべてのドメインで利用可能です。
{#CI-canViewInDomain__table_gww_bbd_thb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 3. パラメーター]

{#CI-canViewInDomain__table_gww_bbd_thb} {#CI-canViewInDomain__table_hww_bbd_thb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 選択されたドメインで現在のカタログアイテムが表示可能かどうかを検証するフラグ。 有効な値： * true：ドメインでカタログアイテムは表示可能です。 * false：ドメインでカタログアイテムは表示可能ではありません。 {#CI-canViewInDomain__ul_sfm_gdy_shb} |
[表 : 4. 返される内容]

{#CI-canViewInDomain__table_hww_bbd_thb}  
この例は、現在選択されているドメインでカタログアイテムが表示可能かどうかを検証する方法を示しています。

    var catItem = new sn_sc.CatItem("060f3afa3731300054b6a3549dbe5d3e");
    gs.info(catItem.canViewInDomain());

## CatItem - canViewOnSearch(ブール isMobile) {#ariaid-title4}

ユーザーがグローバル検索でカタログアイテムを表示するためのアクセス権を持っているかどうかを判断します。
{#CI-canViewOnSearch_B__table_pqy_zl2_sbb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| isMobile | ブーリアン | モバイルビューまたはデスクトップビューで検索を実行するかどうかを示すフラグ。 有効な値： * true：モバイルビューで検索を実行します。 * false：デスクトップビューで検索を実行します。 |
[表 : 5. パラメーター]

{#CI-canViewOnSearch_B__table_pqy_zl2_sbb} {#CI-canViewOnSearch_B__table_qqy_zl2_sbb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | ユーザーがグローバル検索でカタログアイテムを表示するためのアクセス権を持っているかどうかを示すフラグ。 有効な値： * true：ユーザーはグローバル検索でカタログアイテムを表示するためのアクセス権を持っています。 * false：ユーザーはグローバル検索でカタログアイテムを表示するためのアクセス権を持っていません。 |
[表 : 6. 返される内容]

{#CI-canViewOnSearch_B__table_qqy_zl2_sbb}  
このコード例は、ユーザーがデスクトップビューでのグローバル検索でカタログアイテムを表示するためのアクセス権を持っているかどうかを確認する方法を示しています。

    var catItem = new sn_sc.CatItem("04b7e94b4f7b4200086eeed18110c7fd");
    var canView = catItem.canViewOnSearch('false');
    gs.info("Can view on global search: " + canView);

出力：

    Can view on global search: true

## CatItem - create(ブール standardUpdate) {#ariaid-title5}

定義されたカタログアイテムを挿入します。
{#r_CatItem-create_Boolean__table_uh4_31n_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| standardUpdate | ブーリアン | エンジンとワークフローの実行を有効にするかどうかを示すフラグです。 有効な値： * true：エンジンとワークフローの実行を有効にします。 * false：エンジンとワークフローの実行を有効にしません。テーブル内で既に作成、更新されているシステム日付列は更新されないことに留意してください。 {#r_CatItem-create_Boolean__ul_olr_kf4_pnb} |
[表 : 7. パラメーター]

{#r_CatItem-create_Boolean__table_uh4_31n_ms} {#r_CatItem-create_Boolean__table_vh4_31n_ms__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 新たに作成されたカタログアイテムの sys_id。 |
[表 : 8. 返される内容]

{#r_CatItem-create_Boolean__table_vh4_31n_ms}  
この例は、新しいカタログアイテムを作成し、変数と変数セットを追加します。

    createCatalogItem('Catalog Item Name', 'Short Description', 'e0d08b13c3330100c8b837659bba8fb4', '109f0438c6112276003ae8ac13e7009d'); 

    function createCatalogItem(name, short_desc, catalogId, categoryId) {
        var catalogItem = new sn_sc.CatItem();
        catalogItem.setAttributes({
            "name": name,
            "short_description": short_desc
        });
        catalogItem.setCatalogs(catalogId); // set catalog
        catalogItem.setCategories(categoryId); // set category

        var catItemSysId = catalogItem.create(); // create new catalog item
        gs.info('Catalog item created in table sc_cat_item with sys_id ' + catItemSysId);

        // add variables and variable set
        addDefaultVariables(catItemSysId);
        addDefaultVariableSet(catItemSysId);
    }

    // creates a new variable and adds it to the catalog item
    function addDefaultVariables(catItemSysId) {
        var myVarAttrs = {
            "type": "6", // type 6 is single line text
            "cat_item": catItemSysId,
            "question_text": "First Name",
            "name": "first_name",
            'order': 50
        };
        var myVar = new sn_sc.CatalogItemVariable();
        myVar.setAttributes(myVarAttrs);
        var varRec = myVar.create(true);
        gs.info('Variable added to catalog item and record created in table item_option_new with sys_id ' + varRec);
    }

    // adds an existing variable set to the catalog item
    function addDefaultVariableSet(catItemSysId) {
        var varset = new sn_sc.CatalogItemVariableSetM2M();
        // fields used in object are from table io_set_item 
        var attr = {
            'variable_set': 'e01cab1a4f334200086eeed18110c71f', // required
            'sc_cat_item': catItemSysId, // required
            'order': 100 // 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);
    }

出力：

    Catalog item created in table sc_cat_item with sys_id be5c771e876370103a730f2d0ebb3556
    Variable added to catalog item and record created in table item_option_new with sys_id b65cb71e876370103a730f2d0ebb3535
    Variable set added to catalog item and M2M record created in table io_set_item with sys_id 8b5cb71e876370103a730f2d0ebb354b

## CatItem - deleteRecord(ブール standardUpdate) {#ariaid-title6}

カタログアイテムを削除します。
{#r_CatItem-delete_Boolean__table_g1q_mfn_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| standardUpdate | ブーリアン | エンジンとワークフローの実行を有効にするかどうかを示すフラグです。 有効な値： * true：エンジンとワークフローの実行を有効にします。 * false：エンジンとワークフローの実行を有効にしません。 |
[表 : 9. パラメーター]

{#r_CatItem-delete_Boolean__table_g1q_mfn_ms} {#r_CatItem-delete_Boolean__table_h1q_mfn_ms__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 10. 返される内容]

{#r_CatItem-delete_Boolean__table_h1q_mfn_ms}  
この例は、非アクティブなすべてのカタログアイテムを削除します。

    var catalogItem = new GlideRecord('sc_cat_item');
    catalogItem.addQuery('active', 'false'); // get all inactive catalog items
    catalogItem.query();
    while (catalogItem.next()) {

        // before deleting a catalog item, delete its associated variable set M2M records
        var variableSetM2M = new GlideRecord('io_set_item'); // M2M table linking variable set and catalog item
        variableSetM2M.addQuery('sc_cat_item', catalogItem.getUniqueValue()); // get M2M records for the catalog item
        variableSetM2M.query();
        while (variableSetM2M.next()) {
            var varset = new sn_sc.CatalogItemVariableSetM2M(variableSetM2M.getUniqueValue()); // M2M record sys_id
            varset.deleteRecord(true); // delete M2M record
        }

        // then delete the catalog item
        var item = new sn_sc.CatItem(catalogItem.getUniqueValue()); 
        item.deleteRecord(true);
    }

## CatItem - getFirstAccessibleCategoryForSearch(文字列 catalogId) {#ariaid-title7}

ユーザーがカタログで表示できる最初のカテゴリを返します。
{#CI-getFirstAccessibleCategoryForSearch_S__table_x4w_2g5_qbb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| catalogId | 文字列 | カタログの sys_id。 |
[表 : 11. パラメーター]

{#CI-getFirstAccessibleCategoryForSearch_S__table_x4w_2g5_qbb} {#CI-getFirstAccessibleCategoryForSearch_S__table_y4w_2g5_qbb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | ユーザーがカタログで表示できる最初のカテゴリの sys_id。 |
[表 : 12. 返される内容]

{#CI-getFirstAccessibleCategoryForSearch_S__table_y4w_2g5_qbb}  
例：

    var CatItem=new sn_sc.CatItem("04b7e94b4f7b4200086eeed18110c7fd");	
    	console.log(CatItem.getFirstAccessibleCategoryForSearch("e0d08b13c3330100c8b837659bba8fb4"));

出力：

    d258b953c611227a0146101fb1be7c31

## CatItem - getInvalidDelegatedUsers(アレイ requestForUsers) {#ariaid-title8}

関連付けられたアイテムの委任 (代理で要求) が許可されていないユーザーのアレイを返します 。
このメソッドは、アレイで渡された各ユーザーを検証します。
{#CI-getInvalidDelegatedUsers_A__table_avj_5n3_nlb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| requestForUsers | オブジェクト | 関連付けられたユーザーが現在のアイテムを取得できるかどうか、またそのアイテムは代理で要求できるかどうかを確認するためのユーザー sys_id のアレイ。ユーザー sys_id はユーザー \[sys_user\] テーブルにあります。 |
[表 : 13. パラメーター]

{#CI-getInvalidDelegatedUsers_A__table_avj_5n3_nlb} {#CI-getInvalidDelegatedUsers_A__table_bvj_5n3_nlb__entry__2}

| タイプ | 説明 |
|-|-|
| アレイ | 代理人によるアイテムの要求が許可されていないユーザーの名前 (ユーザー \[sys_user\] テーブルの Name 列) のリスト。 |
[表 : 14. 返される内容]

{#CI-getInvalidDelegatedUsers_A__table_bvj_5n3_nlb}  
この例は、代理人によるアイテムの要求が許可されていないユーザーの名前のリストを取得する方法を示しています。

    function getInvalidDelegatedUsers(itemId, userIds) {
    var catItem = new sn_sc.CatItem(itemId);
    var invalidUsers = catItem.getInvalidDelegatedUsers(userIds);
    return invalidUsers;
    }

出力：

    [
      "Joe Smith",
      "Jenny Brown",
      "Fred Bennet",
      "Alice Jones"
    ]

## CatItem - getRecordClass() {#ariaid-title9}

現在のカタログアイテムレコードのクラス名を返します。
{#CI-getRecordClass__table_jld_nl2_sbb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 15. パラメーター]

{#CI-getRecordClass__table_jld_nl2_sbb} {#CI-getRecordClass__table_kld_nl2_sbb__entry__2}

| タイプ | 説明 |
|-|-|
| 文字列 | 現在のカタログアイテムレコードのクラス名 |
[表 : 16. 返される内容]

{#CI-getRecordClass__table_kld_nl2_sbb}  
例：

    var CatItem=new sn_sc.CatItem("04b7e94b4f7b4200086eeed18110c7fd");	
    	console.log(CatItem.getRecordClass());

出力：

    sc_cat_item

## CatItem - isDelegationAllowed(文字列 delegatedUser) {#ariaid-title10}

指定された代理人ユーザーが現在のサービスカタログアイテムに対する取得権を持っているかどうかを確認します。
{#CI-isDelegationAllowed_S__table_spd_p3q_nlb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| delegatedUser | 文字列 | オプション。サービスカタログアイテムを要求するユーザー (代理人) の sys_id。このメソッドは、ユーザーがアイテムに対する取得権を持っているかどうかを検証します。 デフォルト：呼び出し元ユーザーがアイテムに対する取得権を持っているかどうかを確認します。 |
[表 : 17. パラメーター]

{#CI-isDelegationAllowed_S__table_spd_p3q_nlb} {#CI-isDelegationAllowed_S__table_tpd_p3q_nlb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | ユーザーが現在のサービスカタログアイテムに対する取得権を持っているかどうかを示すフラグ。 有効な値： * true：ユーザーはアイテムに対する取得権を持っています。 * false：ユーザーはアイテムに対する取得権を持っていません。 {#CI-isDelegationAllowed_S__ul_sxh_kqq_nlb} |
[表 : 18. 返される内容]

{#CI-isDelegationAllowed_S__table_tpd_p3q_nlb}  
このコード例は、カタログアイテムの委任が許可されているかどうかを判断する方法を示しています。

    function canRequestFor(itemId, user) {
      var catItem = new sn_sc.CatItem(itemId);
      var result = catItem.isDelegationAllowed(user);
      return result;
    }

出力：true

## CatItem - isVisibleServicePortal() {#ariaid-title11}

現在のカタログアイテムがサービスポータルで利用可能かどうかを判断します。
{#CI-isVisibleServicePortal__table_rdm_bn2_sbb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| なし |   |   |
[表 : 19. パラメーター]

{#CI-isVisibleServicePortal__table_rdm_bn2_sbb} {#CI-isVisibleServicePortal__table_sdm_bn2_sbb__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | カタログアイテムが Service Portal で利用可能かどうかを示すフラグ。 有効な値： * true：Service Portal で利用可能です。 * true：Service Portal で利用可能ではありません。 |
[表 : 20. 返される内容]

{#CI-isVisibleServicePortal__table_sdm_bn2_sbb}  
例：

    var catItem = new sn_sc.CatItem("04b7e94b4f7b4200086eeed18110c7fd");
    var catItemAvail = catItem.isVisibleServicePortal();
    gs.info("Is item available on Service Portal: " + catItemAvail);

出力：

    Is item available on Service Portal: true

## CatItem - notAvailableForUserCriteria(文字列 action, アレイ criteriaIDs) {#ariaid-title12}

Not Available For ユーザー基準をカタログアイテムに追加します。
{#r_CIS-notAvailableForUserCriteria_S_A__table_wdk_tkn_vz__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| action | 文字列 | 実行するアクション。 * <kbd class="ph userinput">add</kbd>：ユーザー基準を \[利用不可\] リストに追加します。 * <kbd class="ph userinput">delete</kbd>：ユーザー基準を \[利用不可\] リストから削除します。 {#r_CIS-notAvailableForUserCriteria_S_A__ul_gc4_bs4_kpb} |
[表 : 21. パラメーター]

{#r_CIS-notAvailableForUserCriteria_S_A__table_wdk_tkn_vz} {#r_CIS-notAvailableForUserCriteria_S_A__table_xdk_tkn_vz__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 22. 返される内容]

{#r_CIS-notAvailableForUserCriteria_S_A__table_xdk_tkn_vz}  
この例は、指定された Not Available For ユーザー基準を追加する方法を示しています。

    var item = new sn_sc.CatItem("31bea3d53790200044e0bfc8bcbe5dec");
    item. notAvailableForUserCriteria("add", ["0c441abbc6112275000025157c651c89"]);

## CatItem - read(オブジェクト columns, ブール standardUpdate) {#ariaid-title13}

カタログアイテムの属性値のマッピングを返します。
{#r_CatItem-read_Object_Boolean__table_hsf_kgn_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 列 | オブジェクト | 値を返す列の名前/値ペア。 |
| standardUpdate | ブーリアン | エンジンとワークフローの実行を有効にするかどうかを示すフラグです。 有効な値： * true：エンジンとワークフローの実行を有効にします。 * false：エンジンとワークフローの実行を有効にしません。 {#r_CatItem-read_Object_Boolean__ul_alx_f3p_kpb} |
[表 : 23. パラメーター]

{#r_CatItem-read_Object_Boolean__table_hsf_kgn_ms} {#r_CatItem-read_Object_Boolean__table_isf_kgn_ms__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 列名と値のマッピング。 |
[表 : 24. 返される内容]

{#r_CatItem-read_Object_Boolean__table_isf_kgn_ms}  
この例は、カタログアイテムの name フィールドと price フィールドを読み取ります。

    var catItem = new sn_sc.CatItem("a96277509f300200b407b89a442e704e");
    var values = catItem.read({"name" : "", "price" : ""}, true);
    gs.info("Catalog item name: " + values.name);
    gs.info("Catalog item price: " + values.price);

出力：

    Catalog item name: Standard Laptop
    Catalog item price: 1100

## CatItem - setAttributes(オブジェクト attributes) {#ariaid-title14}

カタログアイテムの属性を設定します。
{#r_CatItem-setAttributes_Object__table_lgj_33n_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 属性 | オブジェクト | 設定する列の名前/値ペア。 |
[表 : 25. パラメーター]

{#r_CatItem-setAttributes_Object__table_lgj_33n_ms} {#r_CatItem-setAttributes_Object__table_mgj_33n_ms__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 26. 返される内容]

{#r_CatItem-setAttributes_Object__table_mgj_33n_ms}  
この例は、新しいカタログアイテムの属性を設定します。

    createCatalogItem('Name of your Catalog Item', 'Short Description of your Catalog Item', 'e0d08b13c3330100c8b837659bba8fb4', '109f0438c6112276003ae8ac13e7009d'); 

    function createCatalogItem(name, short_desc, catalogId, categoryId) {
        var catalogItem = new sn_sc.CatItem();
        // catalog item column values
        var attributes ={
            "name": name,
            "short_description": short_desc,
    	 "description": "<p>This is a test catalog item.</p>",
    	 "workflow":"0287f2c64a36232700820846b1f8bdce" // sys_id of workflow
        };
        catalogItem.setAttributes(attributes); // set catalog item attributes
        catalogItem.setCatalogs(catalogId); // set catalog
        catalogItem.setCategories(categoryId); // set category

        var catItemSysId = catalogItem.create(); // create new catalog item
        gs.info('Catalog item created in table sc_cat_item with sys_id ' + catItemSysId);
    }

出力：

    Catalog item created in table sc_cat_item with sys_id 706948a287e370103a730f2d0ebb351e

## CatItem - setCatalogs(文字列 catalogs) {#ariaid-title15}

このカタログアイテムに関連付けるカタログを定義します。
{#r_CatItem-setCatalogs_String__table_enx_v3n_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| catalogs | 文字列 | アイテムに関連付けるカタログの sys_id のカンマ区切りリスト。 |
[表 : 27. パラメーター]

{#r_CatItem-setCatalogs_String__table_enx_v3n_ms} {#r_CatItem-setCatalogs_String__table_fnx_v3n_ms__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 28. 返される内容]

{#r_CatItem-setCatalogs_String__table_fnx_v3n_ms}  
この例は、カタログアイテムを 2 つのカタログに関連付けます。

    var short_desc = 'This is a short description of my catalog item.';
    var catalogItem = new sn_sc.CatItem();
    catalogItem.setAttributes({
        "name": 'My Catalog Item',
        "short_description": short_desc
    });
    catalogItem.setCatalogs('e0d08b13c3330100c8b837659bba8fb4,742ce428d7211100f2d224837e61036d'); // set Service Catalog and Technical Catalog

    var catItemSysId = catalogItem.create(); // create new catalog item
    gs.info('Catalog item created in table sc_cat_item with sys_id ' + catItemSysId);

出力：

    Catalog item created in table sc_cat_item with sys_id d0c5dcaa872770103a730f2d0ebb35cb

## CatItem - setCategories(文字列 categories) {#ariaid-title16}

このカタログアイテムを関連付けるカテゴリを定義します。
{#r_CatItem-setCategories_String__table_c3s_djn_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| カテゴリ | 文字列 | アイテムに関連付けるカテゴリの sys_id のカンマ区切りリスト。 |
[表 : 29. パラメーター]

{#r_CatItem-setCategories_String__table_c3s_djn_ms} {#r_CatItem-setCategories_String__table_d3s_djn_ms__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 30. 返される内容]

{#r_CatItem-setCategories_String__table_d3s_djn_ms}  
この例は、2 つのカテゴリをアイテムに関連付ける方法を示しています。

    var catItem = new sn_sc.CatItem("060f3afa3731300054b6a3549dbe5d3e");
    catItem.setCatagories("af443cfa5f130100a9ad2572f2b47747", "d467125fd7500200d74460affd6103a1");

## CatItem - setImage(文字列 dbImageSysId, 文字列 type) {#ariaid-title17}

カタログアイテムに画像を追加します。
{#r_CatItem-setImage_String_String__table_nwf_kjn_ms__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| dbImageSysId | 文字列 | 画像テーブル \[db_image\] の画像の sys_id。 |
| type | 文字列 | 画像のタイプ。 有効な値： * 画像 * アイコン {#r_CatItem-setImage_String_String__ul_p4n_ksp_kpb} |
[表 : 31. パラメーター]

{#r_CatItem-setImage_String_String__table_nwf_kjn_ms} {#r_CatItem-setImage_String_String__table_owf_kjn_ms__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 32. 返される内容]

{#r_CatItem-setImage_String_String__table_owf_kjn_ms}  
この例は、カタログアイテムに画像を追加します。

    var catItem = new sn_sc.CatItem("1fc0bd968777301093d5ec6d0ebb3548"); // sys_id of catalog item to update
    // update fields if needed
    var attr = {
        'name': 'New Name of Catalog Item - 123',
        'description': '<p>This is an updated description.</p><p> My description new line 1</p><p>My description new line 2</p>',
        'short_description': 'New Short Description of Catalog Item' 
    };
    catItem.update(attr, true);
    catItem.setImage('1b443cfa5f130100a9ad2572f2b47746', 'picture'); // sys_id of image from table db_image

## CatItem - setTableName(文字列 tableName) {#ariaid-title18}

このカタログアイテムのテーブル名を定義します。
{#r_CatItem-setTableName_String__table_yzb_bpd_ns__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| tableName | 文字列 | カタログアイテム \[sc_cat_item\] を拡張するテーブルの名前。 |
[表 : 33. パラメーター]

{#r_CatItem-setTableName_String__table_yzb_bpd_ns} {#r_CatItem-setTableName_String__table_zzb_bpd_ns__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 34. 返される内容]

{#r_CatItem-setTableName_String__table_zzb_bpd_ns}  
この例は、拡張されるテーブルの名前を設定する方法を示しています。

    var catItem = new sn_sc.CatItem();
    catItem.setTableName("New_catalog_table");

## CatItem - submitProducer(オブジェクト values) {#ariaid-title19}

指定された サービスカタログ レコードプロデューサーを使用してレコードを作成します。
{#CI-submitProducer_O__table_gdj_y4n_crb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 値 | オブジェクト | レコードの作成時に使用するフィールド値とレコードプロデューサーが含まれます。 { "variables": {Object}, "sysparm_id": "String" } |
| values.variables | オブジェクト | 新しいレコードのために設定するフィールド値。 { "field": "String", "field": "String" } |
| values.sysparm_id | 文字列 | レコードプロデューサー \[sc_cat_item_producer\] テーブルから使用するレコードプロデューサーの sys_id。 |
[表 : 35. パラメーター]

{#CI-submitProducer_O__table_gdj_y4n_crb} {#CI-submitProducer_O__table_hdj_y4n_crb__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 作成されたレコードに関する情報が含まれます。 { "number": "String", "parent_id": "String", "parent_table": "String", "record": "String", "redirect_portal_url": "String", "redirect_to": "String", "redirect_url": "String", "sys_id": "String", "table": "String" } |
| \<Object\>.number | 作成されたレコードの Number フィールドの値。 データタイプ：文字列 |
| \<Object\>.parent_id | 親レコードの sys_id。 データタイプ：文字列 |
| \<Object\>.parent_table | レコードが作成されたテーブルの親テーブル。 データタイプ：文字列 |
| \<Object\>.record | 作成されたレコードの XML。 データタイプ：文字列 |
| \<Object\>.redirect_portal_url | サービスポータル のリダイレクト先 URL。 データタイプ：文字列 |
| \<Object\>.redirect_to | リダイレクト値 データタイプ：文字列 |
| \<Object\>.redirect_url | 作成されたレコードの URL。 データタイプ：文字列 |
| \<Object\>.sys_id | 作成されたレコードの sys_id。 データタイプ：文字列 |
| \<Object\>.table | レコードが作成されたテーブル。 データタイプ：文字列 |
[表 : 36. 返される内容]

{#CI-submitProducer_O__table_hdj_y4n_crb}  
この例は、Create Incident レコードプロデューサーを使用してインシデントを作成します。

    var catalogItem = new sn_sc.CatItem('3f1dd0320a0a0b99000a53f7604a2ef9');  //sys_id of the Create Incident record producer 
    var values = {
       "variables": {"urgency" : "2", "comments" : "Laptop is in a brick state"},
       "sysparm_id": "3f1dd0320a0a0b99000a53f7604a2ef9"
    }
    var targetRecordDetails = catalogItem.submitProducer(values);
    gs.info(JSON.stringify(targetRecordDetails, null, 3));

出力：

    {
       "sys_id": "133b2ee1875f30103a730f2d0ebb35f9",
       "number": "INC0010002",
       "parent_id": null,
       "record": "api/now/table/incident/133b2ee1875f30103a730f2d0ebb35f9",
       "redirect_portal_url": "",
       "parent_table": "task",
       "redirect_url": "incident.do?sys_id=133b2ee1875f30103a730f2d0ebb35f9&sysparm_view=ess",
       "table": "incident",
       "redirect_to": "generated_record"
    }

## CatItem - update(オブジェクト columnValues, ブール standardUpdate) {#ariaid-title20}

カタログアイテムの指定されたフィールドの値を更新します。
{#r_CatItem-update_Object_Boolean__table_uv3_npd_ns__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| columnValues | オブジェクト | 更新するフィールドの名前/値ペアとそれに関連付けられた値。 |
| standardUpdate | ブーリアン | エンジンとワークフローの実行を有効にするかどうかを示すフラグです。 有効な値： * true：エンジンとワークフローの実行を有効にします。 * false：エンジンとワークフローの実行を有効にしません。 {#r_CatItem-update_Object_Boolean__ul_rpk_xsp_kpb} |
[表 : 37. パラメーター]

{#r_CatItem-update_Object_Boolean__table_uv3_npd_ns} {#r_CatItem-update_Object_Boolean__table_vv3_npd_ns__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 38. 返される内容]

{#r_CatItem-update_Object_Boolean__table_vv3_npd_ns}  
この例は、既存のカタログアイテムの名前、簡単な説明、および価格を更新します。

    var catItem = new sn_sc.CatItem("1fc0bd968777301093d5ec6d0ebb3548"); // sys_id of catalog item to update
    printCatalogItem(); // print current catalog item values
    // object containing fields to update
    var attr = {
        "name": "New Name of Catalog Item",
        "short_description": "New Short Description of Catalog Item", 
        "price": "450"
    };
    catItem.update(attr, true);
    printCatalogItem(); // print new catalog item values

    // prints the name, short description, and price of the catalog item
    function printCatalogItem(){
        // object containing fields to read
        var readValues = {
            "name" : "", 
            "short_description" : "", 
            "price" : ""
        };
        var values = catItem.read(readValues, true); // read the field values
        gs.info("Catalog item name: " + values.name);
        gs.info("Catalog item short description: " + values.short_description);
        gs.info("Catalog item price: " + values.price);
    }

出力：

    Catalog item name: Example Catalog Item
    Catalog item short description: Example Short Description
    Catalog item price: 300
    Catalog item name: New Name of Catalog Item
    Catalog item short description: New Short Description of Catalog Item
    Catalog item price: 450


