AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / WLanguage / Administrar bases de datos / HFSQL / Funciones HFSQL
  • Lectura o no de la operación según un elemento clave
  • Memos
  • Cierre
  • 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
Avanza varios registros en el archivo de datos a partir de la posición en curso, según el elemento especificado.
El registro de destino se lee y se carga en la memoria: Se actualizan las variables del HFSQL (por ejemplo, Customer.Name, es decir, el elemento Name del archivo de datos Customer).
Tras la llamada a <Fuente>.Forwardpueden darse varios casos:
  • no existen más registros en el archivo de datos: <Fuente>.Out devuelve True. No se realiza ninguna lectura.
  • la función intenta bloquear un registro ya bloqueado en modo de lectura: HErrorLock devuelve True y <Fuente>.Out devuelve True.


Esta función se puede utilizar con archivos de datos, vistas HFSQL o consultas.
Ejemplo
// Moves to the 2000th record
// of the Customer file according to the CustName key
Customer.ReadFirst(CustName)
Customer.Forward(CustName, 1999)
Reportes y ConsultasHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBConectores Nativos
// Test of the <Source>.Forward status report
// Moves to the 2000th record
// of the Customer file according to the CustName key
Customer.ReadFirst(CustName)
IF Customer.Forward(CustName, 1999, hLockWrite) = False THEN
IF HErrorLock() = True THEN
Info("This record is currently used")
ELSE
Error(HErrorInfo())
END
END
Sintaxis
<Result> = <Source>.Forward([<Item> [, <Step> [, <Options>]]])
<Result>: Booleano
  • True si se avanzó en el archivo de datos,
  • 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.
<Source>: Tipo de fuente especificada
Nombre del archivo de datos, vista o consulta utilizada.
<Item>: Cadena de caracteres opcional
Nombre del artículo según el cual se realiza la búsqueda.
Si no se especifica este nombre, <Fuente>.Forward maneja el último elemento de el archivo de datos utilizado por la última función HFSQL (función que empieza por "H").
<Step>: Entero opcional
Número de pasos hacia adelante (lo que significa número de registros a explorar). El valor predeterminado de <Intervalo> es 1.
<Options>: Constante o combinación de constantes de tipo Integer (opcional)
Configura:
  • el modo de bloqueo aplicado a la Record leyó. Por Default, el bloqueo realizado corresponde al bloqueo actual.
    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 los bloqueos no son soportados por el proveedor OLE DB o por Conector Nativo.

  • la gestión de los duplicados durante la navegación. Por Default, todos los duplicados son examinados.
    hDistinctCuando se realiza una búsqueda en un elemento clave, se busca un solo Record si se encuentran duplicados.
Hyper File 5.5 <Las opciones> se ignoran.
Observaciones

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

En todos los casos, la operación de navegación debe haber sido inicializada por una de las siguientes funciones: <Fuente>.ReadFirst, <Fuente>.First, <Fuente>.ReadSeekFirst, <Fuente>.SeekFirst, <Fuente>.ChangeKey, .RestorePosition.
Si la posición utilizada es una posición clave:
  • si no se especifica la constante hDistinct, la función <Fuente>.Forward permite avanzar <Intervalo> valores de la clave a partir de la posición actual.
  • si se especifica la constante hDistinct, la función <Fuente>.Forward permite avanzar <Intervalo> valores distintos de la clave a partir de la posición actual. Si se encuentran duplicados, se lee un solo duplicado.
Si el elemento utilizado no es un elemento clave:
  • la constante hDistinct no está disponible.
  • la función <Fuente>.Forward permite avanzar <Intervalo> registros activos a partir de la posición actual.

Memos

Los memos asociados con el Record pueden ser leídos automáticamente (o no) cuando se lee el Record. <Fuente>.SetMemo 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 (<Fuente>.ExtractMemo).

Cierre

Por defecto (no se especifica el bloqueo Variable), el bloqueo realizado corresponde al modo de bloqueo actual.
Si se especifica un bloqueo (constantes hLockWrite o hLockReadWrite), se leerá y bloqueará el registro, solo si este no ha sido bloqueado por otra aplicación.
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 <Fuente>.Found debe ser ignorado (<Fuente>.Found debe ser utilizado para las búsquedas realizadas por <Fuente>.ReadSeek).
  • El número actual de Record es devuelto por <Fuente>.RecNum.
  • <Fuente>.Forward respeta el filtro activo actual (definido por <Fuente>.Filter).
  • <Fuente>.ChangeKey se utiliza para modificar la clave de búsqueda mientras se mantiene posicionada en el record actual.
  • Cliente. Forward(Nombre) es equivalente a Cliente.ReadNext( Nombre)
Componente: wd290hf.dll
Versión mínima requerida
  • Versión 25
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 20/06/2023

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