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
  • Los registros leen
  • En bucle a través de un archivo de datos
  • Memos
  • 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
Lee un Record en un archivo de datos según un número Record dado. Este modo de lectura se llama "Acceso directo".. La lectura de Record está cargada en la memoria. HState se utiliza para conocer el estado de record (active, cruzado o borrado).
En general, la función HRead permite posicionarse en el archivo de datos para realizar un bucle de lectura indicando el número de registro.
Tras la llamada a HReadpueden darse varios casos:
  • el número de Record especificado no existe (mayor que el número total de Record s o negativo): no se realiza ninguna lectura y la función HOut devuelve True.
  • el número especificado de Record ya no existe (cruzado Record, borrado Record, ...): no se realiza ninguna lectura y la función HOut devuelve False.
    Utilice HState para conocer el estado de Record.
  • el archivo de datos está vacía: HOut devuelve True.
  • la función intenta bloquear un registro ya bloqueado en modo de lectura: HErrorLock devuelve True y HOut devuelve True.
    Java Acceso con JDBC: La gestión de las cerraduras no está disponible para las bases de datos a las que accede el JDBC.
Esta función se puede utilizar con los archivos de datos (indexados o no) y con las vistas HFSQL.
Ejemplo
// Sequential iteration to display the name of all customers
i is int
FOR i = 1 _TO_ HNbRec(Customer, hStateAll)
HRead(Customer, i)
IF HState() = hStateActive THEN
Info("Customer name: " + Customer.Name)
END
END
Sintaxis
<Result> = HRead([<Data file> [, <Record number> [, <Options>]]])
<Result>: booleano
  • True si se leyó el registro,
  • False si se produce un error (bloqueo, fin del archivo de datos, etc.): el registro no se lee. La función HError permite identificar el error.
<Data file>: Cadena de caracteres opcional
Nombre del archivo de datos HFSQL, vista o consulta utilizada.
Si este parámetro es una cadena vacía (""), HRead manipula el último archivo de datos utilizado por la última función HFSQL (función que empieza por "H").
<Record number>: Entero opcional
Número de la Record para leer.
Si no se especifica este parámetro (o es igual a 0 o a la constante hCurrentRecNum), HRead leerá el Record actual.
OLE DBConectores Nativos HRead lee sólo el record actual. No se puede especificar un número de Record que no sea el actual. Para especificar el registro actual, utilice la constante hCurrentRecNum.
Java Acceso con JDBC: HRead lee sólo el record actual. No se puede especificar un número de Record que no sea el actual. Para especificar el registro actual, utilice la constante hCurrentRecNum.
<Options>: Constante opcional
Configura el bloqueo establecido en el Record leído por HRead:
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.
Hyper File 5.5 Las opciones de bloqueo se ignoran. Utilizar las funciones de bloqueo (HLockRecNum) conservadas para la compatibilidad con el pasado.
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.
Java Acceso con JDBC: Este parámetro no se tiene en cuenta.
Observaciones
WINDEVWEBDEV - Código ServidorReportes y ConsultasUniversal Windows 10 AppiPhone/iPadJavaCódigo de Usuario (UMC)Lenguaje ExternoAjaxHFSQL ClassicHFSQL Client/ServerProcedimientos almacenadosHyper File 5.5

Los registros leen

La función HRead es la única función que permite acceder a un registro tachado o eliminado. Si se borra el Record, el contenido del Record ya no es válido.

En bucle a través de un archivo de datos

HRead no puede utilizarse para continuar una iteración iniciada por HReadFirst, HReadNext.

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).
WINDEVWEBDEV - Código ServidorReportes y ConsultasUniversal Windows 10 AppiPhone/iPadCódigo de Usuario (UMC)Lenguaje ExternoAjaxHFSQL ClassicHFSQL Client/ServerProcedimientos almacenadosHyper File 5.5OLE DBConectores Nativos

Bloqueos

Por defecto (<Opciones> no especificadas), la Record no está bloqueada.
Si se solicita un bloqueo (constantes hLockWrite o hLockReadWrite), se leerá el registro solo si este 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 resultado de HFound debe ignorarse (HFound debe utilizarse para las búsquedas realizadas por HReadSeekFirst y HReadSeekLast).
  • El número actual de Record es devuelto por HRecNum. El primer Record que se encontró en el archivo de datos es Record #1.
  • Esta función sustituye a HReadLock y HReadNoLock, que se mantuvieron por compatibilidad con WINDEV 5.5.
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