INDEXORD( )
Devuelve la posición de orden del índice activo.
Sintaxis
INDEXORD() –> nOrden
Devuelve
INDEXORD() devuelve un valor numérico entero. El valor devuelto es igual a la posición del índice activo en la lista de ficheros índice abiertos del área de trabajo actual. Un valor cero indica que no hay índice activo y que se está accediendo a los registros en su orden natural. Si no hay abierto ningún fichero de base de datos, INDEXORD() devuelve también el valor cero.
Descripción
INDEXORD() es una función de base de datos que determina la posición del índice activo en la lista de ficheros índice abiertos por el último mandato USE…INDEX o SET INDEX TO en el área de trabajo actual. Suele ser conveniente guardar el último índice de control para poder restablecerlo más tarde.
Por defecto, INDEXORD() actúa en el área de trabajo actualmente abierta. Para que opere en un área de trabajo no seleccionada, debe especificarla como parte de una expresión de alias (consulte el ejemplo siguiente).
Ejemplos
¦ Este ejemplo utiliza INDEXORD() para guardar el orden actual. Después de cambiar a un nuevo orden, utiliza el valor guardado para restablecer el orden original:
USE Cliente INDEX Nombre, Serie NEW
nOrden := INDEXORD() // Resultado: 1
SET ORDER TO 2
? INDEXORD() // Resultado: 2
SET ORDER TO nOrden
? INDEXORD() // Resultado: 1
¦ Este ejemplo utiliza una expresión de alias para determinar el número de orden del índice activo en un área de trabajo no seleccionada:
USE Ventas INDEX Vendedor, NumCliente NEW
USE Cliente INDEX Nombre, Serie NEW
? Ventas->(INDEXORD()) // Resultado: 1
Ficheros: La biblioteca asociada es DPXBASE.CH.