Saltar al contenido principal
Versión: Siguiente

COPY NAMED SELECTION

COPY NAMED SELECTION ( {tabla ;} nombre )

ParámetroTipoDescripción
tablaTabla🡒Tabla de la cual copiar selección, o Tabla por defecto, si se omite
nombreCadena🡒Nombre de la selección temporal a crear

Descripción

COPY NAMED SELECTION copia la selección actual de tabla en una selección temporal temp. La tabla por defecto del proceso se utiliza si el parámetro opcional tabla no se especifica. El parámetro temp contiene una copia de la selección. La selección actual y el registro actual de tabla para el proceso no cambian.

Una selección temporal no contiene en realidad registros, sino una lista ordenada de referencias a registros. Cada referencia a un registro ocupa 4 bytes en memoria. Esto significa que cuando una selección se copia utilizando el comando COPY NAMED SELECTION, la cantidad de memoria necesaria es de 4 bytes multiplicado por el número de registros en la selección. Como las selecciones temporales residen en memoria, usted debe tener suficiente memoria para la selección temporal así como la selección actual de la tabla en el proceso.

Utilice el comando CLEAR NAMED SELECTION para liberar la memoria utilizada por temp.

Ejemplo

El siguiente ejemplo permite verificar si hay otras facturas vencidas en la tabla [Personas]. La selección se ordena y luego se guarda. Nosotros buscamos todos los registros donde las facturas están vencidas. Luego reutilizamos la selección y borramos la selección temporal en memoria. Borrar la selección temporal en memoria es opcional, en caso que el diseñador de la base quiera conservar la selección ordenada para uso futuro:

 ALL RECORDS([Personas])
  //Permitir al usuario ordenar la selección
 ORDER BY([Personas])
  // Guardar la selección ordenada como una selección temporal
 COPY NAMED SELECTION([Personas];"OrdenUsuario")
  // Buscar los registros donde las facturas estén vacías
 QUERY([Personas];[Personas]FacturaVence=True)
  //Si se encuentran registros
 If(Records in selection([Personas])>0)
  // Informar al usuario
    ALERT("Sí, hay facturas vencidas en la tabla.")
 End if
  // Reutilizar la selección temporal ordenada
 USE NAMED SELECTION("OrdenUsuario")
  // Borrar la selección de la memoria
 CLEAR NAMED SELECTION("OrdenUsuario")

Ver también

CLEAR NAMED SELECTION
CUT NAMED SELECTION
USE NAMED SELECTION