Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   como creo el alias?? (https://www.clubdelphi.com/foros/showthread.php?t=42372)

dtomeysoto 12-04-2007 20:19:39

como creo el alias??
 
Amigos del club:

En el departamento de personal de mi empresa se usa un programa llamado TEMPUS para el control de la asistencia de los trabajadores. Tal vez alguno de ustedes lo conozca. En el manual de usuario que existe de este programa, hay una parte que dice: para ejecutar TEMPUS debe de hacerse desde el directorio de la aplicación y estar "visible" la biblioteca de funciones del lenguaje soporte (FoxPro 2.6) que se distribuye junto con TEMPUS...

Este departamento tiene que emitir un reporte quincenal que el programa no lo brinda y me han pedido que lo haga. Yo he estado mirando el manual y ya tengo localizados 2 archivos .dbf desde los cuales el reporte mostraría los datos.

Ahora el problema radica que cuando intento abrir alguno de estos archivos (.dbf) con el Database Desktop para mirar su estructura obtengo lo siguiente:

Unable to open table.
Could not find language driver.

Uno de los archivos que estoy tratando de abrir (.dbf) lo envió adjunto para que ustedes lo vean. Junto con este va un archivo de indices supongo yo con extensión .cdx. Ambos van en un .zip

Hice la siguiente prueba, eliminé el archivo .cdx y traté de abrir de nuevo el .dbf con el Database Desktop y obtengo lo siguiente en una ventanita:

Production Index file missing, corrupt or cannot interpret index key.

Open Read Only
Fail Open
Open an Detach

Si escojo la 1era me abre la tabla pero cada vez que intento abrirla me sale lo anterior.
Si escojo la 3era me la abre y no me lo dice mas.

Amigos, disculpen la muela pero necesito hacer una consulta desde Delphi que me involucra dos tablas de este programa y no puedo modificar ni dañar su estructura.

Qué me aconsejan para crear el alias y poder acceder a su contenido sin ninguna dificultad???

poliburro 12-04-2007 21:47:53

Por que no mejor pruebas con ADO?. de hecho si haces la prueba intentando abrir el archivo con access notarás que podrás hacerlo sin probleamas.

Ado es la solución al problema.

:P

dtomeysoto 20-04-2007 16:19:04

funciona pero muy lento
 
Cita:

Empezado por poliburro
Por que no mejor pruebas con ADO?. de hecho si haces la prueba intentando abrir el archivo con access notarás que podrás hacerlo sin probleamas.

Ado es la solución al problema.

:P

Amigos les comento lo que tuve que hacer para poder usar ADO como me lo sugirió el amigo poliburro.

Me fui al Panel de Control -> Herramientas Administrativas -> Data Sources (ODBC) y allí en la ficha System DSN agregué un origen de datos usando el driver Microsoft dBase VFP Driver.

Ya en Delphi puse un TADOConnection en un DataModule y para hacer la cadena de conexión en la ficha Provider seleccioné Microsoft OLE DB Provider for ODBC Drivers. Luego seleccioné en la ficha Connection el nombre que usé para mi origen de datos.

Lo otro fue usar TADQuery y he logrado hacer lo que quería pero a un precio un poco alto. Cada vez que hago una consulta esta se demora cantidad. Es por eso que les escribo para ver si la vía que he utilizado no ha sido la correcta.

Además me tenido algunos problemas a la hora de hacer la consulta SQL pues desde Access vinculé las tablas usando ODBC, para no pasar tanto trabajo hice la consulta allí usando el propio Access para luego copiar y pegar en Delphi y me he dado cuenta que la sentencia SQL que me genera Access no es 100 % compatible al pegarla en un TADOQuery. Los campos de tipo fecha no se manejan igual por poner un ejemplo.

Ahh les puedo decir que una de las consultas que necesito en mi programa funciona más rápido en Access que con ADO en Delphi, por que será?


La franja horaria es GMT +2. Ahora son las 22:56:14.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi