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


---

# GlideElementDynamicAttributeStore - グローバル

# GlideElementDynamicAttributeStore - グローバル {#ariaid-title1}

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

GlideElementDynamicAttributeStore API は、現在の Glide レコードの動的属性を管理するための便利なスクリプトメソッドを提供します。これらのメソッドを GlideRecord API と組み合わせて使用し、定義済みの動的属性値を取得および設定します。

この API を使用して動的属性を作成するには、dynamic_schema_writer ロールが必要です。この API を使用して動的データを読み取るには、dynamic_schema_reader ロールが必要です。

この API は [GlideElement - グローバル](https://servicenow-prod.fluidtopics.net/KTuTJQIwiU7zmj2waBXwgQ#c_GlideElementAPI "GlideElement API には、フィールドとその値を処理するための便利なスクリプトメソッドが多数用意されています。GlideElement メソッドは、現在の Glide レコードのフィールドで使用できます。") API を拡張します。

動的属性の詳細については、「 [Dynamic Schema](https://www.servicenow.com/docs/access?context=dynamic-schema&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US)」を参照してください。

## GlideElementDynamicAttributeStore - getDynamicAttribute(文字列 attributePath) {#ariaid-title2}

指定された動的属性パスにある動的属性を表す GlideElementDynamicAttribute オブジェクトを返します。
{#GEDAS-getDynamicAttribute_S__table_gzs_jld_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| attributePath | 文字列 | 関連する動的スキーマ属性を見つけるために使用する属性パス。 フォーマット:「 `group_name->attr_name」` * `group_name`:属性が関連付けられているグループの名前。動的属性グループ \[dynamic_attribute_group\] テーブルの \[名前\] フィールドまたは動的属性 \[dynamic_attribute\] テーブルの \[グループ\] フィールドにあります。 * `attr_name`:動的グループ内の動的属性の名前。動的属性 \[dynamic_attribute\] テーブルの \[名前\] フィールドにあります。 例 `:「car->color」` |
[表 : 1. パラメーター]

{#GEDAS-getDynamicAttribute_S__table_gzs_jld_bbc} {#GEDAS-getDynamicAttribute_S__table_hzs_jld_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideElementDynamicAttribute | 指定された動的属性を含むオブジェクト。 attributePathパラメーターに無効な情報が含まれている場合は、null を返します。 |
[表 : 2. 返される内容]

{#GEDAS-getDynamicAttribute_S__table_hzs_jld_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    //Gets all the values of the make attribute from the u_inc_dynamic_schema dynamic attribute store column on the incident table
    var gr_Inc = new GlideRecord('incident');
    gr_Inc.query();
    while(gr_Inc.next()) {
        var attr = gr.getDynamicAttribute('inc_dynamic_schema->cars->make');
        gs.info(attr.getValue());
    }

    //You can also use if(gr_Inc.next()) if you don't want all the values
    var gr_Inc = new GlideRecord('incident');
    gr_Inc.query();
    if(gr_Inc.next()) {
        var attr = gr_Inc.getDynamicAttribute('inc_dynamic_schema->cars->make');
        gs.info(attr.getValue());
    }

## GlideElementDynamicAttributeStore - getDynamicAttributeDisplayValue(文字列 attributePath) {#ariaid-title3}

動的属性ストア内の指定された属性パスにある動的属性の表示値を返します。表示値が使用できない場合は、内部値を返します。
{#GEDAS-getDynamicAttributeDisplayValue_S__table_zn3_1md_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| attributePath | 文字列 | 関連する動的スキーマ属性を見つけるために使用する属性パス。 フォーマット:「 `group_name->attr_name」` * `group_name`:属性が関連付けられているグループの名前。動的属性グループ \[dynamic_attribute_group\] テーブルの \[名前\] フィールドまたは動的属性 \[dynamic_attribute\] テーブルの \[グループ\] フィールドにあります。 * `attr_name`:動的グループ内の動的属性の名前。動的属性 \[dynamic_attribute\] テーブルの \[名前\] フィールドにあります。 例 `:「car->color」` |
[表 : 3. パラメーター]

{#GEDAS-getDynamicAttributeDisplayValue_S__table_zn3_1md_bbc} {#GEDAS-getDynamicAttributeDisplayValue_S__table_a43_1md_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 人間が判読できる形式の関連する動的属性の値。 attributePathパラメーターに無効な情報が含まれている場合は、null を返します。 |
[表 : 4. 返される内容]

{#GEDAS-getDynamicAttributeDisplayValue_S__table_a43_1md_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    //Gets all the display values of the luxury attribute from the inc_dynamic_schema dynamic attribute store column on the incident table
    var gr_Inc = new GlideRecord('incident');
    gr_Inc.query();
    while(gr_Inc.next()) {
        var attr = gr_Inc.getDynamicAttributeDisplayValue('inc_dynamic_schema->cars->luxury');
        gs.info(attr);
    }

    //You can also use if(gr.next()) if you don't want all the values
    var gr_Inc = new GlideRecord('incident');
    gr_Inc.query();

    if(gr_Inc.next()) {
        var attr = gr_Inc.getDynamicAttributeDisplayValue('inc_dynamic_schema->cars->luxury');
        gs.info(attr);
    }

## GlideElementDynamicAttributeStore - getDynamicAttributeValue(文字列 attributePath) {#ariaid-title4}

動的属性ストア内で渡された属性パスが指す動的属性の内部値を返します。
動的属性の詳細については、「 [Dynamic Schema](https://www.servicenow.com/docs/access?context=dynamic-schema&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US)」を参照してください。
{#GEDAS-getDynamicAttributeValue_S__table_tnp_rld_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| attributePath | 文字列 | 関連する動的スキーマ属性を見つけるために使用する属性パス。 フォーマット:「 `group_name->attr_name」` * `group_name`:属性が関連付けられているグループの名前。動的属性グループ \[dynamic_attribute_group\] テーブルの \[名前\] フィールドまたは動的属性 \[dynamic_attribute\] テーブルの \[グループ\] フィールドにあります。 * `attr_name`:動的グループ内の動的属性の名前。動的属性 \[dynamic_attribute\] テーブルの \[名前\] フィールドにあります。 例 `:「car->color」` |
[表 : 5. パラメーター]

{#GEDAS-getDynamicAttributeValue_S__table_tnp_rld_bbc} {#GEDAS-getDynamicAttributeValue_S__table_unp_rld_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| オブジェクト | 渡された属性パスが指す動的属性の値。 attributePathパラメーターに無効な情報が含まれている場合は、null を返します。 |
[表 : 6. 返される内容]

{#GEDAS-getDynamicAttributeValue_S__table_unp_rld_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    var gr_Inc = new GlideRecord('incident');
    gr_Inc.query();

    while(gr_Inc.next()) {
        var attr = gr_Inc.getDynamicAttributeValue('inc_dynamic_schema->cars->luxury');
        gs.info(attr);
    }

出力:


    *** Script: 1

## GlideElementDynamicAttributeStore - setDynamicAttributeValue(文字列 attributePath, オブジェクト値) {#ariaid-title5}

動的属性ストア内の指定された属性パスが指す属性を、指定された値に設定します。
動的属性の詳細については、「 [Dynamic Schema](https://www.servicenow.com/docs/access?context=dynamic-schema&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US)」を参照してください。
{#GEDAS-setDynamicAttributeValue_S__table_aj2_vmd_bbc__entry__3}{#GEDAS-setDynamicAttributeValue_S__DynS-value-entry}

| 名前 | タイプ | 説明 |
|-|-|-|
| attributePath | 文字列 | 関連する動的スキーマ属性を見つけるために使用する属性パス。 フォーマット:「 `group_name->attr_name」` * `group_name`:属性が関連付けられているグループの名前。動的属性グループ \[dynamic_attribute_group\] テーブルの \[名前\] フィールドまたは動的属性 \[dynamic_attribute\] テーブルの \[グループ\] フィールドにあります。 * `attr_name`:動的グループ内の動的属性の名前。動的属性 \[dynamic_attribute\] テーブルの \[名前\] フィールドにあります。 例 `:「car->color」` |
| 値 | オブジェクト | 指定された属性に設定する値。 注: 動的属性の場合、次のデータタイプのみがサポートされます。 * ブーリアン (true/false) * 10 進数 * 浮動小数点数 * GlideDate * GlideDateTime * 整数 * 文字列 |
[表 : 7. パラメーター]

{#GEDAS-setDynamicAttributeValue_S__table_aj2_vmd_bbc} {#GEDAS-setDynamicAttributeValue_S__table_bj2_vmd_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideElementDynamicAttributeStore | 指定された値を含む GlideElementDynamicAttributeStore オブジェクトを返します。 groupAttributePathパラメーターに無効な情報が含まれている場合、属性は更新されません。 |
[表 : 8. 返される内容]

{#GEDAS-setDynamicAttributeValue_S__table_bj2_vmd_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    //This simple example inserts a make attribute on the inc_dynamic_schema column where the value of the make attribute is Ford.
    var gr_Inc = new GlideRecord('incident');
    gr_Inc.setDynamicAttributeValue('inc_dynamic_schema->cars->make', 'Ford');
    gr_Inc.insert();

## GlideElementDynamicAttributeStore - setDynamicAttributeValues(GlideDynamicAttributeStore 値) {#ariaid-title6}

渡された GlideElementDynamicAttrbuteStore オブジェクトで指定された値を、現在の GlideRecord 要素の動的属性ストアに設定します。現在の要素のデータ タイプは 、動的属性ストアに設定する必要があります。
動的属性の詳細については、「 [Dynamic Schema](https://www.servicenow.com/docs/access?context=dynamic-schema&version=xanadu&pubname=xanadu-platform-administration&ft:locale=en-US)」を参照してください。
{#GEDAS-setDynamicAttributeValues_O__table_ojl_snd_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 値 | [GlideDynamicAttributeStore](https://servicenow-prod.fluidtopics.net/G893woRUx7uhXLOAt3SI_w#GlideDynamicAttStoreAPI "GlideDynamicAttributeStore API は、文字列、日付、日付/時刻などの他のデータ型と同様に、新しい組み込みの動的属性ストアデータ型へのアクセスを提供します。") | 現在の要素の動的スキーマに設定する値を含むオブジェクト。このオブジェクトで指定されていない値は更新されません。 |
[表 : 9. パラメーター]

{#GEDAS-setDynamicAttributeValues_O__table_ojl_snd_bbc} {#GEDAS-setDynamicAttributeValues_O__table_pjl_snd_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideElementDynamicAttributeStore | GlideElementDynamicAttributeStore オブジェクトを更新しました。 |
[表 : 10. 返される内容]

{#GEDAS-setDynamicAttributeValues_O__table_pjl_snd_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    var gr_Inc = new GlideRecord('incident');
    var das = new GlideDynamicAttributeStore();
    das.setDynamicAttributeValue("cars->color", "black");
    das.setDynamicAttributeValue("cars->make","Honda");
    das.setDynamicAttributeValue("cars->model","CRV");
    gr_Inc.setDynamicAttributeValues('inc_dynamic_schema', das);
    gr_Inc.insert();

このコード例では、u_inc_dynamic_schema列に次を挿入します。

    {
      "cars" : {
        "color" : "black",
        "make" : "Honda",
        "model" : "CRV"
      }
    }

## GlideElementDynamicAttributeStore - setDynamicAttributeDisplayValue(文字列 attributePath) {#ariaid-title7}

現在の GlideRecord 要素の動的属性ストア内の指定されたパスにある動的属性の表示値を設定します。
{#GEDAS-setDynAttributeDisplayValue_S__table_bfg_2nd_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| attributePath | 文字列 | 関連する動的スキーマ属性を見つけるために使用する属性パス。 フォーマット:「 `group_name->attr_name」` * `group_name`:属性が関連付けられているグループの名前。動的属性グループ \[dynamic_attribute_group\] テーブルの \[名前\] フィールドまたは動的属性 \[dynamic_attribute\] テーブルの \[グループ\] フィールドにあります。 * `attr_name`:動的グループ内の動的属性の名前。動的属性 \[dynamic_attribute\] テーブルの \[名前\] フィールドにあります。 例 `:「car->color」` |
| 値 | オブジェクト | 現在の動的属性エレメントに設定する値。 渡される値は、次のいずれかのデータタイプである必要があります。 * ブーリアン (true/false) * 10 進数 * 浮動小数点数 * GlideDate * GlideDateTime * 整数 * 文字列 {#GEDAS-setDynAttributeDisplayValue_S__DynS-valid_data_types-ul} |
[表 : 11. パラメーター]

{#GEDAS-setDynAttributeDisplayValue_S__table_bfg_2nd_bbc} {#GEDAS-setDynAttributeDisplayValue_S__table_cfg_2nd_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideElementDynamicAttributeStore | 更新された glide 要素を含むオブジェクト。 |
[表 : 12. 返される内容]

{#GEDAS-setDynAttributeDisplayValue_S__table_cfg_2nd_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    var grFleet = new GlideRecord('u_car_fleet');
    grFleet.setDynamicAttributeValue('u_dyn_attr_store', 'car->color', 'Yellow');
    grFleet.setDynamicAttributeValue('u_dyn_attr_store', 'car->make', 'Ford');
    var sysId = grFleet.insert();
    gs.info("Inserted: " + grFleet.u_dyn_attr_store);

    var daStore = new GlideDynamicAttributeStore();
    daStore.setDynamicAttributeValue('car->color', 'Green');
    daStore.setDynamicAttributeValue('car->model', 'Bronco');

    var geDynAttrStore = grFleet.getElement('u_dyn_attr_store');
    geDynAttrStore.setDynamicAttributeDisplayValues(daStore);
    grFleet.update();
    gs.info("Updated:  " + grFleet.u_dyn_attr_store);

出力:

    *** Script: Inserted: {"car":{"color":"Yellow","make":"Ford"}}
    *** Script: Updated:  {"car":{"color":"Green","make":"Ford","model":"Bronco"}}

次のコード例は、ブール表示値が "1" として格納され、"true" として返される方法を示しています。

     var gr_Inc = new GlideRecord('incident');
    gr_Inc.setDynamicAttributeDisplayValue('u_inc_dynamic_schema->u_cars->u_luxury', '1');
    gr_Inc.insert()

戻り値:

    {
      "u_cars" : {
        "u_luxury" : "true"
      }
    }

## GlideElementDynamicAttributeStore - setDynamicAttributeDisplayValues(GlideDynamicAttributeStore 値) {#ariaid-title8}

渡された GlideDynamicAttrbuteStore オブジェクトで指定された表示値を、現在の GlideRecord 要素の動的属性に設定します。現在の要素のデータタイプは、関連するテーブルで \[動的属性ストア \] に設定する必要があります。
{#GEDAS-setDynAttributeDisplayValues_O__table_o32_b4d_bbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| 値 | [GlideDynamicAttributeStore](https://servicenow-prod.fluidtopics.net/G893woRUx7uhXLOAt3SI_w#GlideDynamicAttStoreAPI "GlideDynamicAttributeStore API は、文字列、日付、日付/時刻などの他のデータ型と同様に、新しい組み込みの動的属性ストアデータ型へのアクセスを提供します。") | 現在の要素の動的属性ストアに設定する表示値を含むオブジェクト。このオブジェクトで指定されていない表示値は更新されません。このオブジェクトには、格納する各属性の属性パスと表示値の両方が含まれている必要があります。 例： { "car":{ "color":"Blue", "make":"Ford", "model":"Mustang" } } |
[表 : 13. パラメーター]

{#GEDAS-setDynAttributeDisplayValues_O__table_o32_b4d_bbc} {#GEDAS-setDynAttributeDisplayValues_O__table_p32_b4d_bbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideElementDynamicAttributeStore | 更新された glide 要素を含むオブジェクト。 |
[表 : 14. 返される内容]

{#GEDAS-setDynAttributeDisplayValues_O__table_p32_b4d_bbc}  
次のコード例は、このメソッドを呼び出す方法を示しています。

    var daStore = new GlideDynamicAttributeStore();
    daStore.setDynamicAttributeValue('car->make', 'Ford');
    daStore.setDynamicAttributeValue('car->model', 'Mustang');
    daStore.setDynamicAttributeValue('car->color', 'Blue');
    gs.info("daStore: " + daStore);

    var gr_Car = new GlideRecord('u_car_fleet');
    gr_Car.query();
    while(gr_Car.next()) {
      var glideElement = gr_Car.getElement('u_dyn_attr_store');
      glideElement.setDynamicAttributeValues(daStore);
      gr_Car.update();
    }


