_DBRead( ) (Rutina de biblioteca API)
Mueve el puntero del registro actual al registro especificado en el área de trabajo especificada.
int _DBRead(int workarea, long record)
int workarea; /* Work area. */
long record; /* Record number. */
Observaciones
_DBRead( ) devuelve 0 si la rutina tiene éxito. Si la rutina falla, _DBRead( ) devuelve un entero negativo cuyo valor absoluto corresponde a un número de error de Visual FoxPro.
Especificar 0 para record equivale a ejecutar GO TOP; especificar – 1 para record equivale a ejecutar GO BOTTOM.
Para obtener más información acerca de cómo crear una biblioteca API e integrarla con Visual FoxPro, vea Acceso a la API de Visual FoxPro.
Ejemplo
El siguiente ejemplo proporciona una funcionalidad similar a la del comando GO de Visual FoxPro. XGO(n) mueve el puntero del registro actual al registro número n del área de trabajo actual.
Código Visual FoxPro
SET LIBRARY TO DBREAD
DO CreateTest
USE Test SHARED
GO BOTTOM
? RECNO()
= XGO(2)
? RECNO()
PROCEDURE CreateTest
CREATE TABLE test (ABC C(20))
APPEND BLANK
REPLACE ABC WITH "This is record 1"
APPEND BLANK
REPLACE ABC WITH "This is record 2"
APPEND BLANK
REPLACE ABC WITH "This is record 3"
APPEND BLANK
REPLACE ABC WITH "This is record 4"
GO TOP
RETURN
Código C
#include <pro_ext.h>
FAR Example(ParamBlk FAR *parm)
{
_DBRead(-1, parm->p[0].val.ev_long);
}
FoxInfo myFoxInfo[] = {
{"XGO", (FPFI) Example, 1, "I"},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Vea también
_DBRewind( ) (Rutina de biblioteca API) | _DBSkip( ) (Rutina de biblioteca API) | _DBUnwind( ) (Rutina de biblioteca API) | GO | GOTO (Comando)