versión 3
SELECTION TO ARRAY (campo | tabla; Array{; campo2 | tabla2; Array2; ...; campoN | tablaN; ArrayN})
Parámetro | Tipo | Descripción | |
campo | tabla | Campo o Tabla | Campo a utilizar para recuperar datos o | |
Tabla a utilizar para recuperar números de registros | |||
Array | Array | Array para recibir valores de campos o números de registros |
Descripción
El comando SELECTION TO ARRAY crea uno o más arrays y copia los valores en los campos o los números de registro de la selección actual en los arrays.
El comando SELECTION TO ARRAY aplica a la selección actual de la tabla especificada en el primer parámetro. SELECTION TO ARRAY, puede realizar las siguientes operaciones:
Cargar los valores de uno o varios campos.
Cargar los números de registro utilizando la sintaxis ...;[tabla];Array;...
Cargar los valores de los campos relacionados, si hay una relación automática Muchos a Uno entre las tablas o que haya llamado previamente el comando SET AUTOMATIC RELATIONS para hacer automáticas las relaciones manuales Muchos a Uno. En ambos caso, los valores se cargan de tablas a través de varios niveles de relaciones Muchos a Uno.
Cada array es definido de acuerdo al tipo de campo. Hay dos excepciones:
Si un campo de tipo Texto se copia en un array Alfa, el Array permanecerá de tipo Alfa.
En modo compatibilidad ASCII (no Unicode), si un campo de tipo Texto se copia en un array Alfa, el array seguirá siendo de tipo Alfa.
Si carga los números de registro, se copian en un array de tipo Entero largo.
4D Server: el comando SELECTION TO ARRAY se optimiza para 4D Server. Cada array se crea en el servidor y luego se envía, en su totalidad, al equipo cliente.
Advertencia: el comando SELECTION TO ARRAY puede crear arrays grandes, dependiendo del rango especificado en inicio y fin, y del tipo y tamaño de los datos a cargar. Los arrays residen en memoria, de tal manera que es una buena idea probar el resultado después de la ejecución del comando. Para hacer esto, pruebe el tamaño de cada array resultante o utilice un método de proyecto ON ERR CALL.
Nota: Después de un llamado a SELECTION TO ARRAY, la selección y el registro actual no son modificados, pero el registro actual no se carga. Si necesita utilizar los valores de los campos del registro actual, utilice el comando LOAD RECORD después del comando SELECTION TO ARRAY.
Ejemplos
1. En el siguiente ejemplo, la tabla [Personas] tiene una relación automática con la tabla [Empresas]. Los dos arrays asApellido y asEmpresaDir son dimensionados de acuerdo al número de registros seleccionados en la tabla [Personas] y contienen la información de ambas tablas:
SELECTION TO ARRAY ([Personas]Apellido;asApellido;[Empresa]Direccion;asEmpresaDir)
2. El siguiente ejemplo devuelve el número de registros de la tabla [Clientes] en el array alNumerosRegistros y los valores del campo [Clientes]Nombres en el array asNombres:
SELECTION TO ARRAY([Clientes];alNumerosRegistros ;[Clientes]Nombres; asNombres)
Ver también
ARRAY TO SELECTION, MULTI SORT ARRAY, ON ERR CALL, SELECTION RANGE TO ARRAY, SET AUTOMATIC RELATIONS.