|
|
|
|
- Lectura de la operación según una clave
- Comprobación de la contraseña
- Varios
- Comparación de HReadLast y HLast
- Bloqueos
HLast (Función)
No disponible con este tipo de conexión
Establece la posición en el último registro de un archivo de datos de acuerdo con un elemento de navegación. TEl Record no se lee. El número de la Record actual se modifica sólo cuando es devuelto por HRecNum. Para las funciones que manipular el número actual de Record ( HDelete, HRead, HModify, etc.), el valor de este número no se actualiza: se debe utilizar la función HRecNum(). Por ejemplo: no hacer:
pero
HDelete(Customer, HRecNum())
Los valores de la posición de búsqueda se leen en orden ascendente (ver Observaciones para más detalles). Atención: El registro cargado en memoria no se modifica. Las variables HFSQL (por ejemplo, Cliente.Nombre, es decir el elemento Nombre del archivo Cliente) no se actualizan. En la mayoría de los casos, HLast establece la posición en el archivo de datos para recorrer los registros que coinciden con una condición. HNext se utiliza para posicionarse en el siguiente Record correspondiente a la condición. Después de llamar a la función HLast, se pueden producir los siguientes casos: - se encontró un registro que corresponde a la condición: HFound devuelve True
- el archivo de datos está vacía o no hay Record correspondiente a la condición: HOut devuelve True
Observaciones: - Mediante Default, HSeekFirst y HSeekLast se realiza una búsqueda de coincidencia exacta.
- Mediante Default, HLast se realiza una búsqueda genérica.
Se lee el valor más alto de la posición de búsqueda (para más detalles, véase observaciones). Atención: El Record cargado en la memoria no se modifica. Las variables HFSQL (por ejemplo, Nombre.del.cliente, o el elemento Name del archivo de datos Customer) no se actualizan. En la mayoría de los casos, HLast se utiliza para fijar la posición en el archivo de datos con el fin de realizar un bucle de lectura con HPrevious. Tras la llamada a HLastpueden darse varios casos: - el archivo de datos está vacía o ningún record corresponde al filtro (definido por HFilter): HOut devuelve True.
- la función intenta bloquear un registro ya bloqueado en modo de lectura: HErrorLock devuelve True y HOut devuelve True.
// Browse a data file from the last record HLast(Customer, Name) WHILE NOT HOut() // Process the record HPrevious(Customer, Name) END
Sintaxis
<Result> = HLast([<Data file>] [, <Search key item> [, <Options>]])
<Result>: booleano - True si el puesto era set,
- False si se produce un error. Este problema puede ser causado por:
- un problema de posicionamiento (archivo de datos vacío, ...): HFound devuelve False y HError devuelve 0.
- un error: HError devuelve un número entero distinto de 0. HErrorInfo devuelve más detalles.
<Data file>: Cadena de caracteres opcional Nombre del archivo de datos utilizado. Si este parámetro es una cadena vacía (""), HLast manipula el último archivo de datos utilizado por la última función HFSQL (función que empieza por "H"). <Search key item>: Cadena de caracteres opcional Nombre del elemento clave utilizado para el bucle de el archivo de datos. Si no se especifica este nombre, HLast utilizará el último elemento de exploración utilizado en este archivo de datos por la última función de gestión HFSQL (función que comienza por "H"). Si este elemento no existe, se utiliza automáticamente el mejor elemento de navegación. <Options>: Constante opcional Configura el bloqueo establecido en el Record seleccionado por HLast: | | hKeepFilter | El filtro set de HFilter se tendrá en cuenta, aunque la clave de búsqueda no esté optimizada para el filtro. Recordatorio: la función HFilter devuelve la clave de búsqueda optimizada para el filtro. Atención: en este caso, pueden surgir problemas de rendimiento en archivos de datos demasiado grandes.
| hLockNo | Sin bloqeuo: otras aplicaciones pueden leer o modificar el registro. | hLockReadWrite | Bloqueo de lectura/escritura: el Record seleccionado no puede ser leído o modificado por otra aplicación. | hLockWrite | Bloqueo de escritura: el Record seleccionado puede ser leído por otra aplicación pero no puede ser modificado por otra aplicación.
| hNoRefresh | |
Observaciones Lectura de la operación según una clave HLast establece la posición en el record con el mayor valor de la clave. El orden de clasificación es el que se especificó en el análisis para esta clave. Si se encuentran duplicados, HLast fija la posición en el primer "duplicado" Record según la secuencia de números Record. Varios - El número actual de Record es devuelto por HRecNum.
- HChangeKey se utiliza para modificar la clave de búsqueda mientras se mantiene posicionada en el record actual.
Comparación de HReadLast y HLast HLast no lee el record: por lo tanto, HLast es más rápido que HReadLast.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|