Conexión a tablas de VFP remotas con ADO

10/12/2004 - 17:57 por Jose19i | Informe spam
Hola grupo a ver si me podeis echar un cable que no lo veo nada claro.

Estoy intentando hacer una conexión a unas tablas de visual fox pro, la
caracteristica que las hace especiales es que se encuentran ubicadas en
un servidor remoto.

He probado estas opciones:

1. Indicando la ruta completa del servidor remoto.

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=\\Servidor\carpeta\dbf; Exclusive=No")

2. Indicando la ruta pero conectado a una unidad de red

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=z:\; Exclusive=No")

3. A través de una DNS indicando que es de foxpro y un directorio de
tabla libre.

cnconexion.open("DSN=Prueba")

4. Mismo caso que el 1 pero en una ruta local

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=c:\carpeta\dbf; Exclusive=No")

5. Mismo caso que el 3 pero con la dsn apuntando a una ruta local

cnconexion.open("DSN=Prueba")

El caso 4 y 5 funcionan correctamente, pero del 1 al 3 obtengo el mismo
error, objeto cerrado o no se encuentra nombre_tabla.dbf, por lo que se
deduce que tiene problemas con la conexiones que están en otros equipos.
Tambien he probado con bases de datos access y tengo el mismo resultado.

Alguna idea de como solucionarlo...??

Muchas gracias y un saludo.

Jose19i

Preguntas similare

Leer las respuestas

#6 pablo crosio
11/12/2004 - 05:23 | Informe spam
hola!

si estas accediendo desde ASP a tablas de VFP en carpetas remotas y tenes
problemas, lo mas probable es que sea tema de permisos
como primera medida te diria que verifiques si la carpeta en donde estan las
tablas esta compartida (no para web sino para windows) y ademas tiene derecho
el usuario que corre las paginas ASP, generalmente IUSR_<PC>

fijate si es eso y despues contanos...

salu2!!

pablo

"Jose19i" escribió:

Hola grupo a ver si me podeis echar un cable que no lo veo nada claro.

Estoy intentando hacer una conexión a unas tablas de visual fox pro, la
caracteristica que las hace especiales es que se encuentran ubicadas en
un servidor remoto.

He probado estas opciones:

1. Indicando la ruta completa del servidor remoto.

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=\\Servidor\carpeta\dbf; Exclusive=No")

2. Indicando la ruta pero conectado a una unidad de red

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=z:\; Exclusive=No")

3. A través de una DNS indicando que es de foxpro y un directorio de
tabla libre.

cnconexion.open("DSN=Prueba")

4. Mismo caso que el 1 pero en una ruta local

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=c:\carpeta\dbf; Exclusive=No")

5. Mismo caso que el 3 pero con la dsn apuntando a una ruta local

cnconexion.open("DSN=Prueba")

El caso 4 y 5 funcionan correctamente, pero del 1 al 3 obtengo el mismo
error, objeto cerrado o no se encuentra nombre_tabla.dbf, por lo que se
deduce que tiene problemas con la conexiones que están en otros equipos.
Tambien he probado con bases de datos access y tengo el mismo resultado.

Alguna idea de como solucionarlo...??

Muchas gracias y un saludo.

Jose19i

Respuesta Responder a este mensaje
#7 Jose19i
14/12/2004 - 18:29 | Informe spam
Hola de nuevo, perdon por la tardanza en contestar...

he probado a hacer la conexión contra una bd de la misma red pero ahora
de tipo access... y obtengo el mismo resultado que con las tablas de
foxpro... el servidor no tiene ningún tipo de firewall, ni nada...

Por lo que el problema queda acotado a la conexión de los servidores...
¿alguna idea?

Un saludo y gracias de nuevo...

Sebastian E. Garcia wrote:
Bueno, ahora entiendo un poco mas. Veamos...

Si tienes el servidor de IIS y las tablas de Fox en la misma red, lo que
deberias hacer, es, desde el servidor de IIS, un ASP que haga la conexion a
la tabla Fox por medio de Ole u ODBC. Lo que te resulte mejor. Una vez que
puedes hacer la conexion desde el ASP, tendrias que obtener el dato que
necesitas y enviarlo por medio de un recordset de ADO y procesarlo. Te lo
digo en forma teorica porque solamente lo he leido, nunca implementado.
Siempre me parecio mas facil y rapido hacer mi DLL que haga de intermediaria
en todos los casos, pero como no es el caso que te resulta mejor, trato de
exponer el otro lado de la teoria.
Tambien deberias fijarte que version de DBF son. Si son de Visual FoxPro o
del viejo FoxPro para DOS/Windows. Calculo que si lo usas con una aplicacion
VB deben ser DBF del segundo tipo. Podrias probar de tratarlas como tablas
DBASE si ese fuera el caso.
Si aun asi no logras lo que necesitas, te diria que te pases por el foro de
Visual FoxPro (microsoft.public.es.vfoxpro) que hay gente con muchisimaaaaa
mas experiencia que yo en ese asunto. Seguramente alla encuentres la forma
perfecta de hacer lo que necesitas. Saludos y suerte,

Sebastian

"Jose19i" escribió en el mensaje
news:

Ok, gracias de nuevo Sebastián te comento exactamente el asunto.

1º Hay un programa interno en la empresa que utiliza tablas de Foxpro,
esta tablas están ubicadas en un servidor local. El programa está hecho
en vb, y funciona todo ok.

2º Hay otro servidor (win2003 server st ed.) que tiene el iis instalado,
configurado y funcionando ok. Este enlaza con un sql server local y todo



ok.

3º Necesito hacer una consulta desde una pagina asp, alojada en el
server del punto 2, y que me devuelva el resultado de una de las tablas
que utiliza la aplicación del punto1.

Nota: El server del punto 1 y el 2 están en la misma red.
Nota: El server del punto 2 tiene acceso remoto.
Nota: De foxpro lo unico que conozco son las estructuras de tablas e
indices, y no puedo tocar nada de ellas. Excepto acceder a la
información contenida en las tablas.

Espero haberme exlicado mejor, gracias y perdón por las molestias...

Un saludo.

Jose19i.

Sebastian E. Garcia wrote:

No termino de entender una cosa.
Tu dices que desde tu browser quieres acceder una base de datos/tabla de
Visual FoxPro que esta en otra maquina (remota) y sacar un solo





registro? Es

eso lo que quieres hacer?
Porque lo que hago yo siempre es lo que te explique. Compilo una DLL en





VFP

que hace el SELECT que necesito (incluso puede recibir parametros para
unirlas al WHERE) y el resultado lo paso como XML para no dar vueltas





con

ADO y todo eso. Y desde mi servidor ASP proceso el archivo XML pasandolo
nuevamente a una tabla de VFP. Pero si lo que tienes es un servidor





remoto y

no cuentas con la posibilidad de instalalrle una DLL (ademas de no saber





si

en esa misma maquina corre el servidor de ASP) no tengo mucha idea de





como

hacerlo. Porque termina siendo una conexion a otra maquina pero dejando





de

lado la teoria cliente-servidor. Con SQL server puedes hacer algo asi,





desde

la web, pero con VFP no estoy seguro. Explicamelo mejor a ver si





llegamos a

alguna solucion. :)

Sebastian

"Jose19i" escribió en el mensaje
news:eu82d%


Hola Sebastián, gracias por contestar, pero no tengo la posibilidad
puesto que es un directorio donde se encuentran tablas dbf con sus
indices cdx.

Yo lo unico que quiero es conectar con una tabla dbf, sin interferir en
los programas externos que la estén utilizando y sacar un unico
registros de ella.

Gracias de nuevo.

Un saludo.

Jose19i

Sebastian E. Garcia wrote:


Tienes la posibilidad de crear un objeto COM+ con VFP? Si puedes hacer





eso,


instalas la DLL en el servidor remoto y desde tu ASP solo tienes que





hecer


un CREATEOBJCT para instanciar el objeto y correr los procedures que
consideres necesario. Es lo mas sencillo para tu caso, creo.

Sebastian














Respuesta Responder a este mensaje
#8 Jose19i
14/12/2004 - 18:30 | Informe spam
Hola Pablo creo que los tiros van por ahí... creo que has dado en el
clavo...

Gracias y un saludo...

pablo crosio wrote:
hola!

si estas accediendo desde ASP a tablas de VFP en carpetas remotas y tenes
problemas, lo mas probable es que sea tema de permisos
como primera medida te diria que verifiques si la carpeta en donde estan las
tablas esta compartida (no para web sino para windows) y ademas tiene derecho
el usuario que corre las paginas ASP, generalmente IUSR_<PC>

fijate si es eso y despues contanos...

salu2!!

pablo

"Jose19i" escribió:


Hola grupo a ver si me podeis echar un cable que no lo veo nada claro.

Estoy intentando hacer una conexión a unas tablas de visual fox pro, la
caracteristica que las hace especiales es que se encuentran ubicadas en
un servidor remoto.

He probado estas opciones:

1. Indicando la ruta completa del servidor remoto.

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=\\Servidor\carpeta\dbf; Exclusive=No")

2. Indicando la ruta pero conectado a una unidad de red

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=z:\; Exclusive=No")

3. A través de una DNS indicando que es de foxpro y un directorio de
tabla libre.

cnconexion.open("DSN=Prueba")

4. Mismo caso que el 1 pero en una ruta local

cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
SourceTypeÛF; SourceDB=c:\carpeta\dbf; Exclusive=No")

5. Mismo caso que el 3 pero con la dsn apuntando a una ruta local

cnconexion.open("DSN=Prueba")

El caso 4 y 5 funcionan correctamente, pero del 1 al 3 obtengo el mismo
error, objeto cerrado o no se encuentra nombre_tabla.dbf, por lo que se
deduce que tiene problemas con la conexiones que están en otros equipos.
Tambien he probado con bases de datos access y tengo el mismo resultado.

Alguna idea de como solucionarlo...??

Muchas gracias y un saludo.

Jose19i

Respuesta Responder a este mensaje
#9 Eduardo Sanchez
15/03/2005 - 18:41 | Informe spam
Hola Jose, tengo los mismos problemas de conexion a tablas de VFP Remotas,
acabo de compartir la Carpeta e indicarle los accesos al Usuario IUSR_<Pc>,
pero sigo con el mismo problema :(

te agradeceria me comentes como solucionaste tu problema
desde ya muy agradecido.

Saludos

Eduardo S.

"Jose19i" wrote:

Hola Pablo creo que los tiros van por ahí... creo que has dado en el
clavo...

Gracias y un saludo...

pablo crosio wrote:
> hola!
>
> si estas accediendo desde ASP a tablas de VFP en carpetas remotas y tenes
> problemas, lo mas probable es que sea tema de permisos
> como primera medida te diria que verifiques si la carpeta en donde estan las
> tablas esta compartida (no para web sino para windows) y ademas tiene derecho
> el usuario que corre las paginas ASP, generalmente IUSR_<PC>
>
> fijate si es eso y despues contanos...
>
> salu2!!
>
> pablo
>
> "Jose19i" escribió:
>
>
>>Hola grupo a ver si me podeis echar un cable que no lo veo nada claro.
>>
>>Estoy intentando hacer una conexión a unas tablas de visual fox pro, la
>>caracteristica que las hace especiales es que se encuentran ubicadas en
>>un servidor remoto.
>>
>>He probado estas opciones:
>>
>>1. Indicando la ruta completa del servidor remoto.
>>
>>cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
>>SourceTypeÛF; SourceDB=\\Servidor\carpeta\dbf; Exclusive=No")
>>
>>2. Indicando la ruta pero conectado a una unidad de red
>>
>>cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
>>SourceTypeÛF; SourceDB=z:\; Exclusive=No")
>>
>>3. A través de una DNS indicando que es de foxpro y un directorio de
>>tabla libre.
>>
>>cnconexion.open("DSN=Prueba")
>>
>>4. Mismo caso que el 1 pero en una ruta local
>>
>>cnConexion.open("Driver={Microsoft Visual Fox Pro Driver};
>>SourceTypeÛF; SourceDB=c:\carpeta\dbf; Exclusive=No")
>>
>>5. Mismo caso que el 3 pero con la dsn apuntando a una ruta local
>>
>>cnconexion.open("DSN=Prueba")
>>
>>El caso 4 y 5 funcionan correctamente, pero del 1 al 3 obtengo el mismo
>>error, objeto cerrado o no se encuentra nombre_tabla.dbf, por lo que se
>>deduce que tiene problemas con la conexiones que están en otros equipos.
>>Tambien he probado con bases de datos access y tengo el mismo resultado.
>>
>>Alguna idea de como solucionarlo...??
>>
>>Muchas gracias y un saludo.
>>
>>Jose19i
>>

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida