GlideDynamicAttribute - グローバル
GlideDynamicAttribute API は動的属性メタデータへのアクセスを提供します。
この API は、動的属性 [dynamic_attribute] テーブルで定義された動的スキーマ値を取得できるようにするメソッドを提供します。動的属性には、定義済みのデータタイプとsys_idがあります。動的属性の詳細については、「 動的スキーマ」を参照してください。
この API を使用して動的属性を作成するには、dynamic_schema_writer ロールが必要です。この API を使用して動的データを読み取るには、dynamic_schema_reader ロールが必要です。
- addAggregate()
- addHaving()
- getDynamicAttributeValue()
- getDynamicAttributeDisplayValue()
- getValue()
- groupBy()
- orderBy()
- orderByAggregate()
- addQuery()
- getDisplayValue()
- getDynamicAttribute()
- getDynamicAttributeDisplayValue()
- getDynamicAttributeValue()
- getValue()
- orderBy()
- orderByDesc()
- setDisplayValue()
- setDynamicAttributeDisplayValue()
- setDynamicAttributeValue()
- setDynamicAttributeValues()
- setValue()
GlideDynamicAttribute - getGroupName()
動的属性オブジェクトのグループ名プロパティの値を取得します。
Zurich リリースの時点で、動的グループは動的スキーマから削除されています。Zurich リリースより前の関連する動的属性グループで定義された動的属性の場合、このメソッドは下位互換性のために引き続き機能します。お客様は、現在の動的属性定義に移行して、将来の機能改善を利用することをお勧めします。
動的カテゴリで動的属性を使用すると、管理を簡素化し、動的スキーマのユーザーエクスペリエンスを向上させることができます。詳細については、「Working with Dynamic Schema」を参照してください。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 動的属性のグループ名プロパティの値。 |
次の例では、動的属性オブジェクトグループ名の値が a と表示されます。
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue('a->b', 5); // transient (adding here)
das.setDynamicAttributeValue('a->c', 10); // defined in dynamic_attribute table
var attributes = das.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getGroupName() = " + attr.getGroupName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: a->c,a->b
*** Script:
*** Script: [0].getPath() = a->c
*** Script: [0].getName() = c
*** Script: [0].getGroupName() = a
*** Script: [0].isTransient() = false
*** Script: [0].getType() = integer
*** Script:
*** Script: [1].getPath() = a->b
*** Script: [1].getName() = b
*** Script: [1].getGroupName() = a
*** Script: [1].isTransient() = true
*** Script: [1].getType() = string
GlideDynamicAttribute:getName()
動的属性オブジェクトの name プロパティの値を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 動的属性の名前プロパティの値。 |
次の例は、動的属性オブジェクト名の値を返す方法を示しています。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer
GlideDynamicAttribute:getNamespacedName()
名前空間内の動的属性の名前を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 名前空間内の動的属性の名前。 形式: |
次の例は、 u_product/u_car_inventory という名前空間内で動的属性名を返す方法を示しています。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer
GlideDynamicAttribute:getNamespaceName()
動的属性名前空間の名前を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 動的属性名前空間の名前。 |
次の例は、動的属性の名前空間 u_product/u_car_inventory を返す方法を示しています。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer
GlideDynamicAttribute:getPath()
動的属性オブジェクトのパスプロパティの値を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 動的属性のパスの値。 |
次の例は、動的属性オブジェクトパスの値を返す方法を示しています。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer
GlideDynamicAttribute:getType()
動的属性オブジェクトの type プロパティの値を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| 文字列 | 動的属性のデータタイプの値。 |
次の例では、動的属性オブジェクトタイプの値が、一時属性の場合は 文字列 、非一時属性の場合は 整数 として表示されます。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer
GlideDynamicAttribute:isTransient()
オブジェクトが一時動的属性かどうかを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
| タイプ | 説明 |
|---|---|
| ブーリアン | 動的属性が一時的かどうかを示すフラグ。 有効な値:
|
次の例では、 isTransient() メソッドは非一時オブジェクトに対して false を返します。
var used_car = new GlideDynamicAttributeStore('u_product/u_car_inventory');
used_car.setDynamicAttributeValue('mfg_year', 2014); // transient (adding here)
used_car.setDynamicAttributeValue('u_total_miles', 53246); // defined in dynamic_attribute table
var attributes = used_car.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getNamespaceName() = " + attr.getNamespaceName());
gs.info("[" + i + "].getNamespacedName() = " + attr.getNamespacedName());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
出力:
*** Script: mfg_year,u_total_miles
*** Script:
*** Script: [0].getPath() = mfg_year
*** Script: [0].getName() = mfg_year
*** Script: [0].getNamespaceName() = u_product/u_car_inventory
*** Script: [0].getNamespacedName() = u_product/u_car_inventory/mfg_year
*** Script: [0].isTransient() = true
*** Script: [0].getType() = string
*** Script:
*** Script: [1].getPath() = u_total_miles
*** Script: [1].getName() = u_total_miles
*** Script: [1].getNamespaceName() = u_product/u_car_inventory
*** Script: [1].getNamespacedName() = u_product/u_car_inventory/u_total_miles
*** Script: [1].isTransient() = false
*** Script: [1].getType() = integer