PDA

Ver la Versión Completa : No encuentra el path despues de migrar datos


Walterdf
07-03-2005, 18:31:41
Buenas
Hice una aplicación (Delphi 6) que maneja una base Paradox y ademas permite migrar esa base a DBF y tambien a un TXT.
El problema viene cuando hago la migración, la opción permite, mediante un TSaveDialog, seleccionar la ruta y el nombre del archivo donde se migraran los datos. Una vez terminado el proceso trato de realizar, por ejemplo, una busqueda y no encuentra niguna de las bases de datos (Path not found), tengo que cerrar la aplicación y volver a abrirla para poder seguir haciendo consultas, etc.
Para migrar a DBF utilicé un BatchMove de la siguiente manera:


DialogExportar.DefaultExt:='dbf';
DialogExportar.Filter:='.dbf';

With query1 do //query1 es la consulta que contiene los datos de origen
begin
close;
with sql do
begin
clear;
add('select * from listas.db order by PRODUCTO, MARCA, CODIGO');
end;
open;
end;

if DialogExportar.Execute then
begin
TableDBF.TableName := DialogExportar.FileName; //tableDBF es la tabla destino
with BatchMove1 do
begin
Source := Query1;
Destination := TableDBF;
Mode := batCopy;
Execute;
end;
end;


Todas las bases de la aplicacion estan ubicadas en un mismo path: 'sistema\tablas\'
No importa cual fuese la carpeta donde está el ejecutable, éste siempre estará acompañado de la carpeta sistema para que pueda encontrar las bases.
El código para migrar a TXT no lo escribo porque es mas extenso, pero aclaro que usé el mismo TSaveDialog (DialogExportar), supongo que el problema viene por ahí.
Espero haberme explicado bien y que alguien pueda darme una mano para resolver esto.
Muchas gracias.

Walter

Coco
07-03-2005, 18:56:09
puede ser por la forma en que hayas definido los parametros de path en la base de datos y cuando seleccionas un path para hacer el backup (esto te modifica el directorio actual).

Lo que debes hacer es poner el path completo de la base de datos al iniciar la misma, tomando el path actual de tu ejecutable y añadiendole tu path de tablas. o bien antes de ejecutar el dialogExportar.execute debes guardar el path actual y luego volver a setearlo.
Saludos.

Walterdf
07-03-2005, 19:17:17
Ok, muchas gracias, veré que hago pero en realidad lo que hace no debería ser así ¿verdad?
Un abrazo y gracias nuevamente.

Walter