|
Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
entitySelection.toCollection( )
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| entitySelection.toCollection ( {filtro ;}{ opções {; Inicio {; quantos}}} ) -> Resultado | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| filtro | String, Collection |
|
Especifica quais propriedades de entidade vai extrair | |||||
| opções | Inteiro longo |
|
dk com chave primária: adds the primary key dk with stamp: adiciona a stamp | |||||
| Inicio | Inteiro longo |
|
Determina o índice de início | |||||
| quantos | Inteiro longo |
|
Número de entidades a extrair | |||||
| Resultado | Collection |
|
Coleção de objetos que contém atributos e valores da coleção da entidade | |||||
O método entitySelection.toCollection( ) cria e devolve uma coleção onde cada elemento é um objeto que contém um conjunto de propriedades e valores correspondentes aos nomes e valores de atributos para a coleção de entidades .
Se omitir o parâmetro filtro ou conter uma string vazia ou "*", são extraídos todos os atributos. Os atributos com a propriedade "kind" "relatedEntity" são extraidos da forma simples: um objeto com propriedade __KEY (chave principal). Os atributos com a propriedade "kind" "relatedEntities" não são extraídos.
No parâmetro filtro, pode passar os atributos de entidade a serem extraidos. Duas sintaxes são permitidas:
Se filtro é especificado para atributos do tipo relatedEntity:
Se filtro for especificado para atributos do tipo relatedEntities:
No parâmetro opções, pode passar os seletores dk with primary key ou dk with stamp para agregar as chaves principais ou stamps da entidade nos objetos extraídos.
O parâmetro inicio lhe permite indicar o índice inicial das entidades a extrair. Pode passar qualquer valor entre 0 e a entidade de seleção-1.
O parâmetro quantas lhe permite especificar o número de entidades a extrair, começando com a especificada em inicio. As entidades soltadas não são devolvidas, mas são consideradas de acordo com quantas. Por exemplo, se quantas= 3 e houver 1 entidade soltada, só são extraídas 2 entidades.
Se quantas> longitude da seleção de entidade, o método devolve objetos (length - inicio).
Se devolve uma coleção vazia se:
A estrutura abaixo é usada em todos os exemplos desta seção:

Exemplo sem parâmetro filtro:
employeesCollection:=New collection
employeesCollection:=$entitySelection.toCollection()[
{
"ID": 411,
"firstName": "Joanna",
"lastName": "Cabrera",
"salary": 75000,
"birthDate": "2014-01-18T00:00:00.000Z",
"woman": true,
"managerID": 0,
"employerID": 20,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": "20",
"__STAMP": 1
},
"directReports": {
"__COUNT": 3
}
},
{
"ID": 412,
"firstName": "Alexandra",
"lastName": "Coleman",
"salary": 36500,
"birthDate": "1958-10-27T00:00:00.000Z",
"woman": true,
"managerID": 411,
"employerID": 20,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": "20",
"__STAMP": 1
},
"manager": {
"__KEY": "411",
"__STAMP": 1
},
"directReports": {
"__COUNT": 3
}
}
]Exemplo com opções:
$employeesCollection:=New collection
$employees:=ds.Employee.all()
$employeesCollection:=$employees.toCollection("";dk with primary key+dk with stamp)Retorna:
[
{
"__KEY": 416,
"__STAMP": 1,
"ID": 416,
"firstName": "Gregg",
"lastName": "Wahl",
"salary": 79100,
"birthDate": "1963-02-01T00:00:00.000Z",
"woman": false,
"managerID": 412,
"employerID": 20,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 20
},
"manager": {
"__KEY": 412
}
},
{
"__KEY": 417,
"__STAMP": 1,
"ID": 417,
"firstName": "Irma",
"lastName": "Durham",
"salary": 47000,
"birthDate": "1992-06-16T00:00:00.000Z",
"woman": true,
"managerID": 412,
"employerID": 20,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 20
},
"manager": {
"__KEY": 412
}
}]
Example with slicing and filtering on properties:
$employeesCollection:=New collection
$filter:=New collection
$filter.push("firstName")
$filter.push("lastName")
$employees:=ds.Employee.all()
$employeesCollection:=$employees.toCollection($filter;0;0;2)Returns:
[
{
"firstName": "Gregg",
"lastName": "Wahl"
},
{
"firstName": "Irma",
"lastName": "Durham"
}
]Exemplo com o tipo relatedEntity com um formulário simples:
employeesCollection:=New collection
employeesCollection:=$entitySelection.toCollection("firstName,lastName,employer")returns:
[
{
"firstName": "Gregg",
"lastName": "Wahl",
"employer": {
"__KEY": 20
}
},
{
"firstName": "Irma",
"lastName": "Durham",
"employer": {
"__KEY": 20
}
},
{
"firstName": "Lorena",
"lastName": "Boothe",
"employer": {
"__KEY": 20
}
}
]
Exemplo com filtro como uma coleção:
employeesCollection:=New collection
$coll:=New collection("firstName";"lastName")
employeesCollection:=$entitySelection.toCollection($coll)Returns:
[
{
"firstName": "Joanna",
"lastName": "Cabrera"
},
{
"firstName": "Alexandra",
"lastName": "Coleman"
}
]Exemplo com a extração de todas as propriedades de relatedEntity:
employeesCollection:=New collection
$coll:=New collection
$coll.push("firstName")
$coll.push("lastName")
$coll.push("employer.*")
employeesCollection:=$entitySelection.toCollection($coll)Returns:
[
{
"firstName": "Gregg",
"lastName": "Wahl",
"employer": {
"ID": 20,
"name": "India Astral Secretary",
"creationDate": "1984-08-25T00:00:00.000Z",
"revenues": 12000000,
"extra": null
}
},
{
"firstName": "Irma",
"lastName": "Durham",
"employer": {
"ID": 20,
"name": "India Astral Secretary",
"creationDate": "1984-08-25T00:00:00.000Z",
"revenues": 12000000,
"extra": null
}
},
{
"firstName": "Lorena",
"lastName": "Boothe",
"employer": {
"ID": 20,
"name": "India Astral Secretary",
"creationDate": "1984-08-25T00:00:00.000Z",
"revenues": 12000000,
"extra": null
}
}
]Exemplo com extração de algumas propriedades de uma relatedEntity:
employeesCollection:=New collection()
employeesCollection:=$entitySelection.toCollection("firstName, lastName, employer.name")[
{
"firstName": "Gregg",
"lastName": "Wahl",
"employer": {
"name": "India Astral Secretary"
}
},
{
"firstName": "Irma",
"lastName": "Durham",
"employer": {
"name": "India Astral Secretary"
}
},
{
"firstName": "Lorena",
"lastName": "Boothe",
"employer": {
"name": "India Astral Secretary"
}
}]Exemplo com extração de algumas propriedades de relatedEntities:
$employeesCollection:=New collection
$employeesCollection:=$employees.toCollection("firstName, lastName, directReports.firstName")Returns:
[
{
"firstName": "Gregg",
"lastName": "Wahl",
"directReports": []
},
{
"firstName": "Mike",
"lastName": "Phan",
"directReports": [
{
"firstName": "Gary"
},
{
"firstName": "Sadie"
},
{
"firstName": "Christie"
}
]
},
{
"firstName": "Gary",
"lastName": "Reichert",
"directReports": [
{
"firstName": "Rex"
},
{
"firstName": "Jenny"
},
{
"firstName": "Lowell"
}
]
}]Exemplo com extração de todas as propriedades de relatedEntities:
$employeesCollection:=New collection
$employeesCollection:=$employees.toCollection("firstName, lastName, directReports.*")[
{
"firstName": "Gregg",
"lastName": "Wahl",
"directReports": []
},
{
"firstName": "Mike",
"lastName": "Phan",
"directReports": [
{
"ID": 425,
"firstName": "Gary",
"lastName": "Reichert",
"salary": 65800,
"birthDate": "1957-12-23T00:00:00.000Z",
"woman": false,
"managerID": 424,
"employerID": 21,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 21
},
"manager": {
"__KEY": 424
}
},
{
"ID": 426,
"firstName": "Sadie",
"lastName": "Gallant",
"salary": 35200,
"birthDate": "2022-01-03T00:00:00.000Z",
"woman": true,
"managerID": 424,
"employerID": 21,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 21
},
"manager": {
"__KEY": 424
}
}
]
},
{
"firstName": "Gary",
"lastName": "Reichert",
"directReports": [
{
"ID": 428,
"firstName": "Rex",
"lastName": "Chance",
"salary": 71600,
"birthDate": "1968-08-09T00:00:00.000Z",
"woman": false,
"managerID": 425,
"employerID": 21,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 21
},
"manager": {
"__KEY": 425
}
},
{
"ID": 429,
"firstName": "Jenny",
"lastName": "Parks",
"salary": 51300,
"birthDate": "1984-05-25T00:00:00.000Z",
"woman": true,
"managerID": 425,
"employerID": 21,
"photo": "[object Picture]",
"extra": null,
"employer": {
"__KEY": 21
},
"manager": {
"__KEY": 425
}
}
]
}
]
Produto: 4D
Tema: ORDA - seleção de entidade
Criado por: 4D v17
Manual de linguagem 4D ( 4D v19)
Manual de linguagem 4D ( 4D v19.1)
Manual de linguagem 4D ( 4D v19.4)
Manual de linguagem 4D ( 4D v19.5)
Manual de linguagem 4D ( 4D v19.6)
Manual de linguagem 4D ( 4D v19.7)
Manual de linguagem 4D ( 4D v19.8)
Adicionar um comentário