FoxPro/Visual FoxPro - Base Datos

 
Vista:

Base Datos

Publicado por Juan Carlos Lopez Lopez (128 intervenciones) el 21/08/2009 06:26:24
Saludos amigos:
Tengo un gran problema; con una B.D con 10 tablas; lo q pasa es que estoy desarrollando un sistema que tendra n empresas y que el usuario al logearse abra la B.D de dicha carpeta, el nombre de la B.D "ACUARIO" sera la misma en todas las subcarpeta, las n empresas seran llamadas asi:

Empresa01
Empresa02
Empresa03
:
:
:
Empresann

Ahora si entro a la Empresa01, me coge correctamente la B.D. ACUARIO; pero si despues me logeo a la Empresa02, me jala la B.D ACUARIO de la Empresa01, debiendo jalar de la Empresa02 que es la que se logeo; entre a la empresa que entre siempre me coge la Empresa01, que es con la que empece a desarrollar el sistema.
No quiero pegarlas por el entorno de datos, si no quiero que las abra mediante codigo, como les decia de acuerdo a la empresa que se logee. Como abriria mi B.D por codigo, ayuda por favor.

A ver si me ayudan con esto.
Saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Base Datos

Publicado por Juan286 (185 intervenciones) el 21/08/2009 15:05:09
mmmm no entiende tien una base de datos para cada empresa o es una tabla donde guardar los datos de la empresa es un poco confuso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio
Val: 471
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Base Datos

Publicado por Mauricio (1541 intervenciones) el 21/08/2009 15:30:50
Con un sistema que he desarrollado tenia el mismo problema, lo solucione haciendo una sola BD, luego creo las tablas de la empresa01, con un correlativo e 001 y a todas las tablas que son de esa empresa les genero las tablas con su nombre mas el correlativo 001 y dejo las tablas comunes para cualquier empresa como tablas libres y me funciona bien!!!!!! es una alternativa la que estoy planteando no diciendo que es la unica.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Base Datos

Publicado por Juan Carlos Lopez Lopez (128 intervenciones) el 21/08/2009 23:49:27
Gracias Mauricio, si tambien seria una buena alternativa, aunque aun insisto en seguir con la B.D.

Juan: Si una B.D por empresa; es que cuando se cree una empresa, este crea su propia base de datos, como decia en cualquier empresa que cree el nombre de la B.D sera igual para todas y los mismo las tablas.

Sigue pendiente la ayuda amigos.
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Base Datos

Publicado por juan286 (185 intervenciones) el 22/08/2009 15:18:37
Pues yo pienso igual que mauricio es mas facil manejar una sola B.D y tener una tabla por empresa que estar llamando y creando varias b.d por empresa es tedieso y gast de memoria inecesaria
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio
Val: 471
Plata
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

Base Datos

Publicado por Mauricio (1541 intervenciones) el 22/08/2009 15:47:00
Me parece que no tienes claro el concepto de BD, pero para tu problema podrias probar algo asi:
*--- login a empresa01
SET DEFA TO RutaEmpresa01
*-- login a empresa02
SET DEFA TO RutaEmpresa02
,
,
,
Y asi sucesivamente, demasiado tedioso y largo, pero bueno........
Suerte!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Base Datos

Publicado por jose camilo (805 intervenciones) el 22/08/2009 21:44:51
primero create una tabla libre k guarde la direccion fisica de la bd

luego dice

al entrar y escoger la empresa busca dond esta fisicamente los datos en la tabla libre (m.df)
Wstr = m.df + "BdNombre"
use &Wstr

de aqui en delante ya esta habilidata tu bd solo necesitas un select a tus respectivas tablas
cheka el use en la ayuda ademas el exclusive , etc
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Base Datos

Publicado por abolom (31 intervenciones) el 28/08/2009 06:47:24
Lo hago de esta forma:
lo guado en una tabla el nombre de la empresa (empresa01),ruta (folder) donde se guarda la empresa

al entrar al sistema abre la tabla y selecciona la empresa y los trae datos de la ruta (folder) y lo guardo en una variable.

ejemplo
empresa ruta
empresa01 matriz
empresa02 sucursal

mruta=alltrim(ruta)

una que seleccione la empresa y quiero abrir o usar la tabla Catalogo.dbf por ejemplo hago de la siguiente manera:

use Mruta+"catalogo"


espero que te sirva de algo la idea.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar