PDA

Ver la Versión Completa : conexion remota con DBF


killaton
01-04-2005, 23:50:06
Hola Amigos...

Ante todo ... gracias por todo...

Les planteo mi siguiente problema....

Quisiera saber si es posible y como hacerlo, desde un programa Delphi, acceder a una DBF alojada en otro ordenador, y mediante una Query, extraer los datos y grabarlos a una Tabla en MySql.

Como seria la conexion?

Desde ya... mil gracias por todo.....

PINO72
03-04-2005, 12:41:34
Hola.

La conexión remota la estableces fácilmente utilizando la propiedad FileName del componente TTable.

Por ejemplo, si tienes una unidad en Red a la que tienes asignada la letra 'H' , pues puedes acceder a la tabla desde el ordenador cliente asignando a la propiedad la trayectoria de la unidad en red. "H:\Mitabla.dbf".

Tambien puedes crearte un alias en el que entre otros parámetros, estableces la trayectoria del archivo en cuestión mediante el Database DeskTop que viene con Delphi.

Por tanto:
1 - Creas una tabla en tiempo de ejecución con la definición de campos que necesites.
2 - Estableces la conexión con el TQuery ejecutando en cláusula SQL con la trayectoria de la tabla remota y ejecutas la consulta.
3 - Graba los resultados de los campos en la tabla destino creada anteriormente.

Espero haberte ayudado, aunque para hacer los tres puntos debes leerte las ayudas de los componentes TTAble y TQuery. (Yo trabajo con Interbase y estoy bastante pegado ... :p )

killaton
03-04-2005, 19:04:34
Hola PINO72...

gracias por tu explicacion magistral.-..:)

Pero creo no poder hacerlo de esa forma ya que el ordenador donde se encuentra la DBF, no posee unidad de red asignada y tampoco es posible hacerlo. Lo cual ,segun creo, la unica forma de hacerlo seria mediante IP... o no es asi?.:confused:

El problema es que no he logrado poder hacerlo...

Se te ocurre alguna idea?

mil gracias... nuevamente.;)

marcoszorrilla
03-04-2005, 19:56:06
Si los ordenadores de que hablamos estan en el mismo grupo de trabajo la cosa es bien simple tienes que poner la dirección en donde se encuentre en unicode

\\nombreEquipo\NombreCarpetaCompartida

Por lo que veo no se trata de una conexión remota sino de una conexión a traves de una intranet local.

Un Saludo.

killaton
04-04-2005, 13:12:35
Hola Marcos...

gracias por tu respuesta...

Exactamente se trata de una conexion Intranet local :( , pense que era lo mismo... :) Disculpas....

AHORA... existe alguna manera de hacerlo?

Gracias.. y nuevamente disculpas.

marcoszorrilla
04-04-2005, 17:57:25
Para lo que quieres tienes que utilizar el BDE y configurarlo para Dbase, lo más simple es que crees una alias con los parámetros adecuados y luego no tienes más que usar componentes Tquery o Ttable conectados al alias creado previamente, te convendría leer el artículo que tienes aquí mismo en el Club Delphi sobre Paradox en Red.

Un Saludo.