|
|
|
|
- Operación de lectura basada en una clave
- Comparación entre <Fuente>.Next y .ReadNext
- Varios
- Bloqueos
<Fuente>.Next (Función)
No disponible con este tipo de conexión
Establece la posición en el siguiente registro del archivo de datos según un campo de navegación. El registro no se lee.El número de la Record actual se modifica sólo cuando es devuelto por <Fuente>.RecNum. Para las funciones que manipular el número actual de Record ( <Fuente>.Delete, <Fuente>.Read, <Fuente>.Modify, etc.), el valor de este número no se actualiza: se debe utilizar la función <Fuente>.RecNum(). Por ejemplo: no hacer:
pero
Customer.Delete(Customer.RecNum())
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, <Fuente>.Next establece la posición en el archivo de datos para recorrer los registros que coinciden con una condición. <Fuente>.Next se utiliza para posicionarse en el siguiente Record correspondiente a la condición. Después de llamar a la función <Fuente>.Next, se pueden producir los siguientes casos: - se encontró un registro que corresponde a la condición: <Fuente>.Found devuelve True
- el archivo de datos está vacía o no hay Record correspondiente a la condición: <Fuente>.Out devuelve True
Observaciones:
Los valores del campo de navegación se leen en orden ascendente (para obtener más información, consulte las observaciones). Atención: El registro cargado en memoria no se modifica. Las variables HFSQL (por ejemplo, Customer.Name, es decir el campo Name del archivo Customer) no se actualizan. Generalmente, la función <Fuente>.Next establece la posición al recorrer el archivo de datos. Después de llamar a la función <Fuente>.Next, se pueden producir los siguientes casos: - el archivo de datos está vacío o ningún registro corresponde al filtro (definido con la función <Fuente>.Filter): La función <Fuente>.Out devuelve True
- la función intenta bloquear un registro ya bloqueado en modo de lectura: las funciones HErrorLock y <Fuente>.Out devuelven True.
Acceso con JDBC: Los bloqueos no se pueden gestionar en bases de datos a las que se accede mediante JDBC.
Customer.First(Name) WHILE Customer.Out() = False // Process the record Customer.Next(Name) END
Sintaxis
<Result> = <Source>.Hnext([<Search key item> [, <Options>]])
<Result>: Booleano - True si se estableció la posición,
- False si se ha producido un error. Este problema puede ser causado por:
- un problema de posicionamiento (archivo de datos vacío, etc.): la función <Fuente>.Found devuelve False y la función HError devuelve 0.
- un error: la función HError devuelve un número entero distinto de 0. La función HErrorInfo devuelve más detalles.
<Source>: Tipo de fuente especificada Nombre del archivo de datos HFSQL. <Search key item>: Cadena de caracteres opcional Nombre del campo clave utilizado para recorrer el archivo de datos. Si no se especifica este nombre, la función <Fuente>.Next manipula el último campo de navegación utilizado en el archivo de datos por la última función de gestión HFSQL (función que empieza por "H"). Si este campo no existe, el mejor campo de navegación se utiliza automáticamente. <Options>: Constante opcional Configura el bloqueo y la gestión de duplicados realizados en el registro seleccionado con la función <Fuente>.Next: | | hDistinct | Si hay duplicados, establece la posición en un solo registro de los duplicados. Este parámetro solo se tiene en cuenta si se recorre un campo clave. De forma predeterminada, se recorren todos los duplicados.
| hLockNo | Sin bloqeuo: otras aplicaciones pueden leer o modificar el registro. | hLockReadWrite | Bloqueo de lectura y escritura: el registro seleccionado no puede ser leído o modificado por otra aplicación. | hLockWrite | Bloqueo de escritura: el registro seleccionado puede ser leído por otra aplicación pero no se puede modificar. |
Para cambiar el modo de bloqueo, utilice: Observaciones Operación de lectura basada en una clave La función <Fuente>.Next establece la posición en el siguiente registro con el valor de clave más alto. El criterio de ordenación que se tiene en cuenta es el especificado en el análisis para esta clave. Comparación entre <Fuente>.Next y <Fuente>.ReadNext La función <Fuente>.Next no lee el registro: por lo tanto, la función <Fuente>.Next es más rápida que la función <Fuente>.ReadNext. Varios - La función <Fuente>.RecNum devuelve el número de registro actual.
- La función <Fuente>.ChangeKey cambia la clave de búsqueda conservando la posición en el registro actual.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|