5.1. エンティティ検索¶
5.1.1. エンティティを検索する¶
5.1.1.1. スクリプト開発モデル¶
・エンティティを全て呼び出したい場合(※1)sample.js
function openSearchEntitysetDialog() { // エンティティ検索画面を呼び出します window.open('%ベースURL%/repository/search/metadata/entityset'); }・エンティティが有効化のデータのみを呼び出したい場合(※2)sample.js
function openSearchEntitysetDialog() { // エンティティ検索画面を呼び出します window.open('%ベースURL%/repository/search/metadata/entityset?enabled=true'); }コラム
下記のようにコールバック関数を利用することもできます。
(※1)の場合(‘%ベースURL%/repository/search/metadata/entityset#%コールバック関数%’)
(※2)の場合(‘%ベースURL%/repository/search/metadata/entityset?enabled=true#%コールバック関数%’)
コールバック関数を指定しない場合、デフォルトのコールバック関数は’onEntitysetSelected’です。
5.1.2. 結果を返却する¶
5.1.2.1. スクリプト開発モデル¶
sample.js
// エンティティ検索画面で選択した項目は配列で返却され、上から順番に格納されます。 window.onEntitysetSelected = function (selected) { if (selected.length > 0) { // 配列の0番目のエンティティIDを取得します var entityId = selected[0].properties.entityId; // 配列の0番目のエンティティ名を取得します var entityName = selected[0].localizeName.default; } }コラム
コールバック関数を指定する場合
onEntitysetSelectedを指定したコールバック関数に変更してください。
sample.jsの引数の配列オブジェクトの説明をします。
・selected
取得できる情報は、以下です。
プロパティ | 説明 | 型 |
---|---|---|
enabledFlag | エンティティの有効化を示すフラグ | boolean |
label | ツリーの表示名 | string |
localizeName(※1) | エンティティ名 | object |
localizeDescription(※1) | 説明 | object |
parentId | 親のID | string |
properties.entityId | エンティティID | string |
entityItem(※2) | エンティティ項目 | array |
relations(※3) | 関連 | array |
(※1)localizeName、localizeDescriptionには多言語情報が格納されており、構成は以下です。
プロパティ | 説明 | 型 |
---|---|---|
default | 標準 | string |
ja | 日本語 | string |
en | 英語 | string |
zh_CN | 中国語(簡体字) | string |
(※2)entityItemには以下の要素が格納されています。
プロパティ | 説明 | 型 |
---|---|---|
entityItemId | 辞書項目IDまたはエイリアスID | string |
entityItemType | 辞書項目種別
・辞書項目の場合(dictionary-item)
・エイリアスの場合(dictionary-alias)
|
string |
primaryKey | Primary Key制約 | boolean |
required | Not Null制約 | boolean |
(※3)relationsには以下の要素が格納されています。
プロパティ | 説明 | 型 |
---|---|---|
relationId | 関連ID | string |
multiplicity | 多重度 | string |
comment | コメント | string |
sourceEntityId | 関連元エンティティID | string |
targetEntityId | 関連先エンティティID | string |
relationItems(※4) | 関連項目 | array |
(※4)relationItemsにはentityItemが紐付いており、以下の要素が格納されています。
プロパティ | 説明 | 型 |
---|---|---|
sourceId | 関連先エンティティ項目ID
entityItemのentityItemIdが紐付きます
|
string |
sourceType | 関連先エンティティ項目種別
entityItemのentityItemTypeが紐付きます
|
string |
targetId | 関連元エンティティ項目ID
entityItemのentityItemIdが紐付きます
|
string |
targetType | 関連元エンティティ項目種別
entityItemのentityItemTypeが紐付きます
|
string |
コラム
それぞれのプロパティを取得する場合のサンプルは以下の通りです。
※selectedの0番目を取得するものとします。
// エンティティ名(日本語)を取得する場合
var entityName = selected[0].localizeName.ja;
// 説明(英語)を取得する場合
var description = selected[0].localizeDescription.en;
// エンティティ項目を取得する場合
var entityItem = selected[0].entityItem;
// 関連と関連項目を取得する場合
var relations = selected[0].relations;
var relationItems = relations[0].relationItems;