Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com

Inicio

 
4D v20 R7
New collection

New collection 


 

New collection {( valor {; valor2 ; ... ; valorN} )} -> Resultado 
Parámetro Tipo   Descripción
valor  Número, Texto, Fecha, Objeto, Collection, Puntero in Valor de la colección
Resultado  Collection in Nueva colección

El comando New collection crea una nueva colección vacía o prellena y devuelve su referencia.

Si no pasa ningún parámetro, New collection crea una colección vacía y devuelve su referencia.

Debe asignar la referencia devuelta a una variable 4D declarada con _O_C_COLLECTION.

Nota: tenga en cuenta que _O_C_COLLECTION declara una variable de tipo Colección pero no crea ninguna colección.

Opcionalmente, puede prellenar la nueva colección pasando uno o varios valores como parámetro(s).

De lo contrario, puede agregar o modificar elementos posteriormente a través de la asignación de la notación de objetos. Por ejemplo:

 myCol[10]:="My new element"

Si el nuevo índice de elementos está más allá del último elemento existente de la colección, la colección se redimensiona automáticamente y todos los elementos intermediarios nuevos obtienen el valor null.

Nota: para más información sobre la notación de objetos, consulte la sección Uso de la notación objeto.

Puede pasar todo número de valores de los tipo soportados (número, texto, fecha, puntero, objeto, colección...). A diferencia de los arrays, las colecciones pueden mezclar datos de diferentes tipos.

Debe prestar atención a los siguientes problemas de conversión:

  • Si pasa un puntero, se mantiene como es; Se evalúa mediante el comando JSON Stringify
  • Las fechas se almacenan en el formato de fecha "aaaa-mm-dd" o de cadena al formtao "AAAA-MM-DDTHH:mm:ss.SSSZ" en función del parámetro actual relativo al almacenamiento de fechas en objetos (ver Página Compatibilidad). Al convertir fechas 4D en texto, antes de almacenarlas en la colección, de forma predeterminada, el programa toma en cuenta la zona horaria local. Puede modificar este comportamiento utilizando el selector Dates inside objects del comando SET DATABASE PARAMETER.
  • Si pasa un tiempo, se almacena como un número de milisegundos (Real).

Usted desea crear una nueva colección vacía y asignarla a una variable colección 4D:

 C_COLLECTION($myCol)
 $myCol:=New collection
  //$myCol=[]

Usted desea crear una colección precargada:

 C_COLLECTION($filledColl)
 $filledColl:=New collection(33;"mike";"november";->myPtr;Current date)
  //$filledColl=[33,"mike","november","->myPtr","2017-03-28T22:00:00.000Z"]

Usted crea una nueva colección y luego agrega un nuevo elemento:

 C_COLLECTION($coll)
 $coll:=New collection("a";"b";"c")
  //$coll=["a","b","c"]
 $coll[9]:="z" //add a 10th element with value "z"
 $vcolSize:=$coll.length //10
  //$coll=["a","b","c",null,null,null,null,null,null,"z"]


Nota: este ejemplo requiere que la notación de objeto esté activada en la base de datos (ver el párrafo Notación objeto ).



Ver también 

C_COLLECTION
New shared collection
Type

 
PROPIEDADES 

Producto: 4D
Tema: Colecciones
Número 1472

This command can be run in preemptive processes

 
CONTENIDO DE LA PÁGINA 
 
HISTORIA 

Creado por: 4D v16 R4

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v20 R7)