ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
entity.toObject( )
|
entity.toObject ( filter {; options} ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
filter | 文字, コレクション |
![]() |
取得する属性 | |||||
options | 倍長整数 |
![]() |
dk with primary key: _KEY プロパティを追加; dk with stamp: _STAMP プロパティを追加 |
|||||
戻り値 | オブジェクト |
![]() |
エンティティからビルドされたオブジェクト | |||||
entity.toObject( ) メソッドはエンティティからビルトされたオブジェクトを返します。オブジェクト内部のプロパティ名はエンティティの属性名と合致します。
filter 引数には、取得するエンティティ属性を渡します。二つのシンタックスが使用できます:
filter 引数がリレートエンティティ型の属性を指定する場合:
filter 引数がリレートエンティティズ型の属性を指定する場合:
filter 引数が空の文字列、あるいは "*" を格納している場合、以下のいづれかが返されます:
options 引数には、dk with primary key または dk with stamp セレクターを渡すことでエンティティのプライマリーキー、あるいはスタンプを取得したオブジェクトに追加するかどうかを指定できます。
このセクションの例題では、全て以下のストラクチャーを使って説明していきます:
filter 引数を使用しない場合:
employeeObject:=employeeSelected.toObject()
以下が返されます:
{ "ID": 413, "firstName": "Greg", "lastName": "Wahl", "salary": 0, "birthDate": "1963-02-01T00:00:00.000Z", "woman": false, "managerID": 412, "employerID": 20, "photo": "[object Picture]", "extra": null, "employer": { // 単純な形式で取得されたリレートエンティティ "__KEY": 20 }, "manager": { "__KEY": 412 } }
プライマリーキーとスタンプを取得する場合を考えます:
employeeObject:=employeeSelected.toObject("";dk with primary key+dk with stamp)
以下が返されます:
{ "__KEY": 413, "__STAMP": 1, "ID": 413, "firstName": "Greg", "lastName": "Wahl", "salary": 0, "birthDate": "1963-02-01T00:00:00.000Z", "woman": false, "managerID": 412, "employerID": 20, "photo": "[object Picture]", "extra": null, "employer": { "__KEY": 20 }, "manager": { "__KEY": 412 } }
リレートエンティティズのプロパティを全て展開する場合を考えます:
employeeObject:=employeeSelected.toObject("directReports.*")
{ "directReports": [ { "ID": 418, "firstName": "Lorena", "lastName": "Boothe", "salary": 44800, "birthDate": "1970-10-02T00:00:00.000Z", "woman": true, "managerID": 413, "employerID": 20, "photo": "[object Picture]", "extra": null, "employer": { "__KEY": 20 }, "manager": { "__KEY": 413 } }, { "ID": 419, "firstName": "Drew", "lastName": "Caudill", "salary": 41000, "birthDate": "2030-01-12T00:00:00.000Z", "woman": false, "managerID": 413, "employerID": 20, "photo": "[object Picture]", "extra": null, "employer": { "__KEY": 20 }, "manager": { "__KEY": 413 } }, { "ID": 420, "firstName": "Nathan", "lastName": "Gomes", "salary": 46300, "birthDate": "2010-05-29T00:00:00.000Z", "woman": false, "managerID": 413, "employerID": 20, "photo": "[object Picture]", "extra": null, "employer": { "__KEY": 20 }, "manager": { "__KEY": 413 } } ] }
リレートエンティティズの一部のプロパティを取得する場合を考えます:
employeeObject:=employeeSelected.toObject("firstName, directReports.lastName")
以下が返されます:
{ "firstName": "Greg", "directReports": [ { "lastName": "Boothe" }, { "lastName": "Caudill" }, { "lastName": "Gomes" } ] }
リレートエンティティを単純な形式で取得する場合を考えます:
$coll:=New collection("firstName";"employer")
employeeObject:=employeeSelected.toObject($coll)
以下が返されます:
{ "firstName": "Greg", "employer": { "__KEY": 20 } }
リレートエンティティの全てのプロパティを取得する場合を考えます:
employeeObject:=employeeSelected.toObject("employer.*")
以下が返されます:
{ "employer": { "ID": 20, "name": "India Astral Secretary", "creationDate": "1984-08-25T00:00:00.000Z", "revenues": 12000000, "extra": null } }
リレートエンティティの一部のプロパティを取得する場合を考えます:
$col:=Create collection
$col.push("employer.name")
$col.push("employer.revenues")
employeeObject:=employeeSelected.toObject($col)
以下が返されます:
{ "employer": { "name": "India Astral Secretary", "revenues": 12000000 } }
プロダクト: 4D
テーマ: ORDA - エンティティ
初出: 4D v17
ランゲージリファレンス ( 4D v19)
ランゲージリファレンス ( 4D v19.1)
ランゲージリファレンス ( 4D v19.4)
ランゲージリファレンス ( 4D v19.5)
ランゲージリファレンス ( 4D v19.6)
ランゲージリファレンス ( 4D v19.7)
ランゲージリファレンス ( 4D v19.8)