|
Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19.8
entitySelection.toCollection( )
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| entitySelection.toCollection ( {filtro ;}{ opciones {; inicio {; cuantas}}} ) -> Resultado | ||||||||
| Parámetro | Tipo | Descripción | ||||||
| filtro | Cadena, Collection |
|
Especifica qué propiedades de entidad extraer | |||||
| opciones | Entero largo |
|
dk with primary key: añade la llave primaria dk with stamp: añade el sello | |||||
| inicio | Entero largo |
|
Designa el índice de inicio | |||||
| cuantas | Entero largo |
|
Número de entidades a extraer | |||||
| Resultado | Collection |
|
Colección de objetos que contienen atributos y valores de la colección de entidades | |||||
El método entitySelection.toCollection( ) crea y devuelve una colección donde cada elemento es un objeto que contiene un conjunto de propiedades y valores correspondientes a los nombres y valores de atributos para la colección de entidades .
Si se omite el parámetro filtro o contiene una cadena vacía o "*", se extraen todos los atributos. Los atributos con la propiedad "kind" "relatedEntity" se extraen de la forma simple: un objeto con propiedad __KEY (llave principal). Los atributos con la propiedad "kind" "relatedEntities" no se extraen.
En el parámetro filtro, puede pasar los atributos de entidad a extraer. Se permiten dos sintaxis:
Si filtro se especifica para atributos del tipo relatedEntity:
Si filtro se especifica para atributos del tipo relatedEntities:
En el parámetro opciones, puede pasar los selectores dk with primary key y/o dk with stamp para agregar las llaves principales y/o sellos de la entidad en los objetos extraídos.
El parámetro inicio le permite indicar el índice inicial de las entidades a extraer. Puede pasar cualquier valor entre 0 y la entidad de selección-1.
El parámetro cuantas le permite especificar el número de entidades a extraer, comenzando con la especificada en inicio. Las entidades soltadas no se devuelven, pero se tienen en cuenta según cuantas. Por ejemplo, si cuantas= 3 y hay 1 entidad soltada, solo se extraen 2 entidades.
Si cuantas> longitud de la selección de entidad, el método devuelve objetos (length - inicio).
Se devuelve una colección vacía si:
La siguiente estructura se usará en todos los ejemplos de esta sección:

Ejemplo sin parámetro filtro u opciones:
C_COLLECTION($employeesCollection)
C_OBJECT($employees)
$employeesCollection:=New collection
$employees:=ds.Employee.all()
$employeesCollection:=$employees.toCollection()Devuelve:
[
{
"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
}
},
{
"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
}
}
]Ejemplo con opciones:
$employeesCollection:=New collection
$employees:=ds.Employee.all()
$employeesCollection:=$employees.toCollection("";dk with primary key+dk with stamp)Devuelve:
[
{
"__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
}
}]
Ejemplo con découpage y filtro:
$employeesCollection:=Creer collection
$filter:=Creer collection
$filter.push("firstName")
$filter.push("lastName")
$employees:=ds.Employee.all()
$employeesCollection:=$employees.toCollection($filter;0;0;2)Devuelve:
[
{
"firstName": "Gregg",
"lastName": "Wahl"
},
{
"firstName": "Irma",
"lastName": "Durham"
}
]Ejemplo con el tipo relatedEntity con formulario simple:
$employeesCollection:=New collection
$employeesCollection:=$employees.toCollection("firstName,lastName,employer")Devuelve:
[
{
"firstName": "Gregg",
"lastName": "Wahl",
"employer": {
"__KEY": 20
}
},
{
"firstName": "Irma",
"lastName": "Durham",
"employer": {
"__KEY": 20
}
},
{
"firstName": "Lorena",
"lastName": "Boothe",
"employer": {
"__KEY": 20
}
}
]
Ejemplo con filtro como una colección:
$employeesCollection:=New collection
$coll:=New collection("firstName";"lastName")
$employeesCollection:=$employees.toCollection($coll)Devuelve:
[
{
"firstName": "Joanna",
"lastName": "Cabrera"
},
{
"firstName": "Alexandra",
"lastName": "Coleman"
}
]Ejemplo con extracción de todas las propiedades de una relatedEntity:
$employeesCollection:=New collection
$coll:=New collection
$coll.push("firstName")
$coll.push("lastName")
$coll.push("employer.*")
$employeesCollection:=$employees.toCollection($coll)Devuelve:
[
{
"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
}
}
]Ejemplo con extracción de algunas propiedades de una relatedEntity:
$employeesCollection:=New collection
$employeesCollection:=$employees.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"
}
}]Ejemplo con extracción de algunas propiedades de relatedEntities:
$employeesCollection:=New collection
$employeesCollection:=$employees.toCollection("firstName, lastName, directReports.firstName")Devuelve:
[
{
"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"
}
]
}]Ejemplo con extracción de todas las propiedades 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
}
}
]
}
]
Producto: 4D
Tema: ORDA - EntitySelection
Creado por: 4D v17
Manual de lenguaje 4D ( 4D v19)
Manual de lenguaje 4D ( 4D v19.1)
Manual de lenguaje 4D ( 4D v19.4)
Manual de lenguaje 4D ( 4D v19.5)
Manual de lenguaje 4D ( 4D v19.6)
Manual de lenguaje 4D ( 4D v19.7)
Manual de lenguaje 4D ( 4D v19.8)
Añadir un comentario