El Blog de Rafa Cano

20 febrero, 2006

FOXPRO: Funcion que detecta a que base de datos pertenece una tabla DBF :: PortalFox :: Nada corre como un zorro: "
Funcion que detecta a que base de datos pertenece una tabla DBF
Enviado por: rcano el 27 Mar 2001 - 06:36 PM
Bases de Datos Hace poco preguntaron como saber a que base de datos pertenece un fichero dbf determinado.




Esta función devuelve la cadena vacia si no se encuentra, si el fichero dbf es una tabla libre, y el nombre y la ruta del DBC si pertenece a una base de datos.




FUNCTION DameDBC()

PARAMETERS tcNombreTabla

LOCAL lnCampos, lnManejador, lnArea

lnArea = SELECT()

SELECT 0

USE (tcNombreTabla) AGAIN

lnCampos = FCOUNT()

USE

lnManejador = FOPEN(tcNombreTabla)

IF lnManejador > 0

FSEEK(lnManejador, 32 + 1 + lnCampos * 32)

lcCadena = FREAD(lnManejador, 263)

if left(lcCadena,1) == CHR(0)

lcCadena = ''

ELSE

lcCadena = LEFT(lcCadena, AT(CHR(0), lcCadena) - 1)

ENDIF

FCLOSE(lnManejador)

ENDIF

SELECT (lnArea)

RETURN lc"