AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Administrar bases de datos / HFSQL / Funciones HFSQL
  • Lectura o no de la operación según un elemento clave
  • Memos
  • Recorrer en bucle los registros que coinciden con una condición
  • Modificar el valor de la clave de búsqueda
  • Bloqueos
  • Varios
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Establece la posición en el siguiente registro del archivo de datos de acuerdo con un elemento de navegación. Se lee el registro y se actualizan las variables HFSQL (por ejemplo, Cliente.Nombre, es decir, el elemento/campo Nombre del archivo de datos Cliente).
Los valores de la posición de búsqueda se leen en orden ascendente (véase observaciones para más detalles).
La función HReadNext permite posicionarse en el archivo de datos durante un bucle de navegación. Esta función sólo se puede ejecutar:
Tras la llamada a HReadNextpueden darse varios casos:
  • el archivo está vacío o ninguna record corresponde al filtro (definido por HFilter): no se realiza ninguna lectura y la función HOut devuelve True.
  • la función intenta bloquear un registro ya bloqueado en modo de lectura: no se realiza ninguna operación de lectura, HErrorLock devuelve True y HOut devuelve True.

    PHP Los bloqueos no están disponibles en PHP.

Esta función se puede utilizar con archivos de datos, vistas HFSQL o consultas.
Ejemplo
HReadFirst(Customer, Name)
WHILE HOut() = False
// Process the record
HReadNext(Customer, Name)
END
Sintaxis
<Result> = HReadNext([<Data file> [, <Browse item>] [, <Options>]])
<Result>: booleano
Corresponde a:
  • False si se produce un error. En este caso, HError devuelve un número entero distinto de 0. HErrorInfo devuelve más detalles sobre el error. El registro no se lee.
  • el valor de la función HFound en los demás casos (se puede leer el registro, incluso si <Resultado> devuelve False).
<Data file>: Cadena de caracteres opcional
Nombre del archivo de datos, vista o consulta utilizada. Si este parámetro es una cadena vacía (""), HReadNext manipula el último archivo de datos utilizado por la última función HFSQL (función que empieza por "H").
<Browse item>: Cadena de caracteres opcional
Nombre del elemento utilizado para el bucle de el archivo de datos, vista o consulta. Si no se especifica este nombre, la función HReadNext utilizará:
  • Para un archivo de datos: el último elemento de navegación utilizado en este archivo de datos por la última función de gestión HFSQL (que comienza con la letra H). Si este elemento no existe, se utiliza automáticamente el mejor elemento de navegación.
  • For a query: el PEDIDO POR de la consulta si existe, en caso contrario el último ítem utilizado.
  • Para una vista: el elemento de ordenación de la vista (si existe), en caso contrario el último elemento utilizado.
<Options>: Constante o combinación de constantes opcional
Permite configurar:
  • el bloqueo establecido en el record leído por HReadNext
  • la gestión de duplicados. Por Default, todos los duplicados son examinados.
hDistinctSi se encuentran duplicados, esta constante permite leer una sola Record entre los duplicados. Este parámetro sólo se tiene en cuenta si la búsqueda se realiza en un elemento clave.

OLE DBConectores Nativos Esta constante no se tiene en cuenta.
hLockNoSin bloqeuo: la Record puede ser leída o modificada por otra aplicación durante la lectura.
hLockReadWriteBloqueo de lectura/escritura: el Record que se lee actualmente no puede ser leído o modificado por otra aplicación.
hLockWriteBloqueo de escritura: el Record que se lee actualmente puede ser leído por otra aplicación pero no puede ser modificado por otra aplicación.
OLE DBConectores Nativos Las opciones de bloqueo no tendrán efecto si el proveedor de OLE DB o Conector Nativo (también llamado Native Access) no admite bloqueos.
OLE DB Las opciones de bloqueo especificadas en la función HReadNext no se tienen en cuenta. El modo de bloqueo especificado por HReadFirst o HReadLast seguirá siendo efectivo durante las llamadas a HReadNext y HReadPrevious.
Para modificar el bloqueo de teclas, debe utilizar:
PHP <Las opciones> se ignoran.
Observaciones

Lectura o no de la operación según un elemento clave

Si el elemento utilizado es una clave, la función HReadNext lee el registro con el valor de clave más alto. El orden de clasificación es el que se especificó en el análisis para esta clave.
Observación: En el caso de un bucle de búsqueda (función HReadSeekFirst, por ejemplo), cuando la función HReadNext lee el registro con el valor más elevado de la clave, HFound le permite saber si el registro corresponde (o no) al criterio de ordenación.
Si el elemento no es una clave, la función HReadNext lee el siguiente registro activo. Al navegar por el archivo de datos, los Record s se ordenarán según su número de Record.
En este caso, el elemento de navegación seleccionado aparecerá en rojo en el editor de código y se mostrará una advertencia en la pantalla de "Panel"Código.
Observación: La autocompletado propone únicamente los puntos clave.

Memos

Los memos asociados con el Record pueden ser leídos automáticamente (o no) cuando se lee el Record. HSetMemo se utiliza para personalizar esta operación de lectura de automatic.
Si los memos están soportados, los memos de texto asociados se leen cuando se lee la Record. Los memos binarios sólo se leen cuando se utilizan explícitamente (HExtractMemo).

Recorrer en bucle los registros que coinciden con una condición

En la mayoría de los casos, HReadSeek, HReadSeekFirst y HReadSeekLast se utilizan para posicionar en el archivo de datos para realizar un bucle de búsqueda entre los registros correspondientes a una condición. Las funciones HReadNext y HReadPrevious permiten leer el siguiente o anterior registro que corresponde a la condición:
  • si el elemento utilizado es una clave, la función HReadNext leerá los siguientes registros que corresponden a los valores superiores o iguales al valor buscado.
  • si el elemento utilizado no es una clave, HReadNext leerá los siguientes registros correspondientes a los valores iguales al valor buscado.
Para ignorar la búsqueda mientras se va a la siguiente o anterior Record, utilice una de las siguientes funciones:
Atención: si debe realizarse una búsqueda con la función HReadNext, la búsqueda inicial (HReadSeek, HReadSeekFirst, HReadSeekLast) no debe utilizar la constante hLimitParsing.

Modificar el valor de la clave de búsqueda

Si el valor del elemento de navegación se modifica antes de utilizar HReadNext, el Record actual puede volver a ser leído por HReadNext en el resto de la navegación.
Al modificar el elemento de exploración se actualiza la clave del índice del archivo. Esta modificación se tiene en cuenta al leer los siguientes registros.
Esta observación también es válida al utilizar la función HReadNext sin clave de búsqueda en una consulta ordenada (ORDER BY).
WEBDEV - Código ServidorAjaxHFSQL ClassicHFSQL Client/ServerProcedimientos almacenadosHyper File 5.5OLE DBConectores Nativos

Bloqueos

Por defecto (<Opciones> no especificadas), la Record no está bloqueada.
Si se especifica un bloqueo (constantes hLockWrite o hLockReadWrite), el registro se leerá solo si aún no ha sido bloqueado.
OLE DBConectores Nativos Las opciones de bloqueo no tendrán efecto si los bloqueos no son soportados por el proveedor OLE DB o por Conector Nativo.

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.
  • Para optimizar las primeras iteraciones en un archivo de datos, utilice HOptimize en este archivo de datos.
Componente: wd290hf.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 27/05/2022

Señalar un error o enviar una sugerencia | Ayuda local