Saber la ubicación donde se encuentra mis tablas

Buenas Noches Experto. En modo de ejecución, me gustaría saber la ubicación exacta en donde se encuentra mi formulario, tengo mi formulario en una carpeta que se llama proyecto y dentro de esta carpeta tengo otra carpeta que se llama datafile donde se encuentran las tablas.
Entonces como tengo el proyecto en mi USB, y como la USB cambia de ruta en diferentes computadoras.
Quiere acceder a mis tablas sin la necesidad de estarlas redireccionando a cada ratos cuando cambie la ubicación.
anteriormente he usado el comando SET DEFAUL TO "c:\ejemplos\proyectos\datafile"
Pero este comando solo sirve si las tablas no cambian de dirección. Que comando puedo usar sin tener que preocuparme por la dirección de las tablas

1 respuesta

Respuesta
1
Para que tus aplicaciones sean portables prueba con lo siguiente
1) Crea una carpeta principal y luego subcarpetas en donde puedas ubicar tus diferentes tipos de archivos por ejemplo
Proyectos = directorio principal aquí va tu aplicativo y las configuraciones que desees
Proyectos\Datos= subdirectorio en donde se guardan las tablas
Proyectos\Frm=Subdirectorio en donde guardas los formularios
Proyectos\Prg =Subdirectorio en donde guardas los codigos fuente
Proyectos\Bmp =Subdirectorio en donde guardas las imagenes
2) Tu aplicativo colocalo en el directorio Proyectos
3) En tu programa principal coloca
SET PATH     TO FRM, PRG, BMP, DATOS
De esta manera tu programa simplemente busca hacia adentro (subdirectorios), no coloques direcciones especificas como SET DEFAULT TO "c:\ejemplos\proyectos\datafile", ya que si cambias de Drive tendrás que cambiar el programa.
Gracias por la respuesta, me parece genial, la probare hoy y te cuento.
OK.
Ok, ya probé, pero como hago para que el programa busque los datos en esos directorios, cree la carpeta Proyectos y dentro de el, creer las carpetas BMP, DATOS, FRM Y PRG, en las cuales ya tengo la información que tiene que ir en esas carpetas, cree el PRG con el código
SET PATH     TO FRM, PRG, BMP, DATOS
Pero sigo con el mismo problema ya que me dice que no se encuentra la ruta.
SET PATH debe estar en tu prg de inicio y que a la vez debe estar en el Directorio Proyectos así como el Formulario Principal o el menu principal del aplicativo, revisa también que los Formularios no estén forzados a usar un directorio en particular.
VFP primero busca en el directorio principal en tu caso Proyectos y luego en los especificados con Set Path, si incluyes subdirectorios en Datos, tambien debes especificarlos
PROCEDURE inicio
CLOSE ALL
CLEAR ALL
SET DEVICE  TO SCREEN
    SET CENTURY    ON
    SET DELETE     ON
    SET MULTILOCKS ON
    SET PATH     TO PRG, FRM, BMP, REP, VCX, DATOS
   ... aqui programa principal
SALUDOS
Gracias Amigo y disculpa las molestias.
Tengo el el formulario principal, el administrador de proyectos y PRG inicial en la carpeta proyectos. Al PRG inicial le agregue el siguiente código.
PROCEDURE inicio && Aqui si pongo esta linea de codigo, el PRG solo parpadea y no muestra el form.
close all
clear all
SET DEVICE  TO SCREEN
    SET CENTURY    ON
    SET DELETE     ON
    SET MULTILOCKS ON
    SET PATH TO PRG, FRM, BMP, REP, VCX, DATOS
    DO FORM juego.scx && pero si lo pongo solo asi, me da un error que no encuentra el form. por lo cual tengo que poner DO FORM "C:\PROYECTOS\JUEGO.SCX" para que muestre el FORM.
En el INIT del FORM, tengo el siguiente codigo .
SELECT A
USE jugador1.DBF
SELECT B
USE jugador2.DBF
SELECT C
USE jugador3.DBF
Pero cuando se inicializa el formulario, me da el error que no encuentra las tablas. No se que hacer, ya que la aplicación o la carpeta Proyectos no solo estaría en una misma ubicación y para esto me gustaría ver algún código que me pueda detectar la ruta en donde se encuentra el proyecto. Solo una duda. El proyecto todavía no lo he compilado.
Por si tienes un ejemplo que quisieras compartirme, que realize esto. mi correos es: (xxxxxx)
Si tu formulario Juego esta en el Directorio FRM no debes tener ningun problema, en la sentencia DO FORM Juego.scx, simplemente coloca "DO FORM juego", para que veas si el path funciona digita en la pantalla de comandos
SET PATH TO PRG, FRM, BMP, REP, VCX, DATOS
luego
MODIFY FORM juego, si al ejecutar este comando te pide la ruta, simplemente indicale omitir y vuelve a cargar los archivos
Gracias Experto Net43, toda tu ayuda me sirvió bastante y logre hacer que mi proyecto encontrara las rutas mediante tu ayuda.
Sigue adelante Amigo y eres el Mejor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas