Directorios en visual foxpro

Hola buenos días
Experto:
Tengo el siguiente problema: Resulta que hice un programa en visualfoxpro, en mi equipo funciona correctamente; (oficina contabilidad)
ahora este programa debe funcionar en un equipo que esta en otra oficina (secretaria), ya se instalo y funciona correctamente,
ahora tenemos una red interna, donde se comparte archivos e impresoras, entre (secretaria y contabilidad) el programa esta compartido para llamarlo desde (contabilidad), pero cuando se lo llama desde el computador (contabilidad) no encuentra los datos, bases de datos y tablas;
se coloco la carpeta con los archivos en la terminal (contabilidad) ahí funciona pero lee los datos que están en (contabilidad) más no los datos que están en (secretaria)
Cual seria el path para que se pueda llamar el programa desde otro computador e incluso si se cambia el nombre de la carpeta siga funcionando correctamente
Gracias

1 Respuesta

Respuesta
1
¿Primero qué todo pido una aclaración la base de datos que estás compartiendo es una sola tanto para contabilidad como para secretaría?
Buenas tardes Experto:
Claro que la base de datos es la misma para la aplicación ya creada y la nueva que se creo
la original esta empaquetada no se cuenta con fuentes
la nueva aplicación toma la base de datos que ya existe.
La base de datos corresponde a un programa de notas, creo que anteriormente también había solicitado ayuda cuando estaba realizando unos formularios ya que el programa no cuenta con algunas cosas, consulte con el dueño del programa y dijo que no había problema al utilizar su base de datos, ese programa funciona correctamente desde cualquier terminal, lo único que se hizo es tomar la base de datos de ese programa y generar otro formulario que toma las tablas y datos que se necesitan para la nueva aplicación
Gracias
Bueno en el programa principal de tu proyecto debes crear una rutina algo parecida a esta:
En equipos clientes la mejor forma de solucionar esto es guardar la ruta de la base de datos en una tabla o archivo *.ini, de esta manera obtenemos la ruta y la enviamos como parámetro a un procedimiento que abrirá la base de datos y si falla cierre el sistema:
Local lcRuta
lcRuta = NombreTabla.Ruta && En el caso de una tabla se sugiere guardar la ruta en un campo de tipo memo.
If !AbrirBasededatos(lcRuta)
   Return .F.
Endif
Procedure AbrirBasedeDatos
   Parameters pRuta
   If !File(pRuta)
     If Messagebox("La ruta a la base de datos no es válida." + chr(13);
     + "¿Desea buscar la base de datos?", 32, "Abrir base de datos") = 6 Then && Sí
       pRuta = GetFile("Dbc")
       If Empty(pRuta)
         =Messagebox("No seleccionó la base de datos.")
          Return .F.
       Endif
     Endif
  Endif
  Open Database (pRuta) Shared
  Return .T.
Endproc
Esa es una posible solución al problema.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas