Una base por empresa

SQL, mySQL, postgreSQL y otros motores
Responder
JavierC
Novato
Mensajes: 24
Registrado: Vie Sep 07, 2012 11:15 pm
Contactar:

Una base por empresa

Mensaje por JavierC » Mié Jun 12, 2013 1:24 pm

Buen dia, estoy haciendo varias pruebas en SQL y quisera saber como definir y trabajar con un sistema que sea multiempresa. Es decir que en el SQL solo se definira una base de datos, pero por cada nueva empresa cargada se generen los archivos en un lugar que defina el usuario. Por ej.: la base con los archivos comunes (utilizados por todas las empresas) estará en \\server\sistema, la empresa 1 tendra sus archivos en \\server\sistema\empresa1, la empresa 2 en \\server\sistema\empresa2, etc......
Esto ya lo estaba utilizando con archivos TPS, definiendo una variable global en Full Pahname y me funciona perfecto. Pero no lo estoy pudiendo implementar en SQL (ya que estoy recien comenzando a utilizarlo).
Agradecería una ayuda.
Gracias.
Saludos.


Avatar de Usuario
Mauricio
Desarrollador de Clarion
Mensajes: 1125
Registrado: Dom Feb 06, 2011 9:34 am
Ubicación: España
Contactar:

Re: Una base por empresa

Mensaje por Mauricio » Vie Jun 14, 2013 10:14 am

Y por qué querés hacerlo así? Una forma sería poner en todas las tablas un código de empresa y filtrar por ese código una vez seleccionada la empresa. De esa forma tendrías solo una base de datos.
Pero si no querés hacerlo de esa manera, entonces creás una base de datos por cada empresa, al iniciar el programa y antes de abrir ninguna tabla de SQL preguntás con qué empresa va a trabajar (deberías tener una tabla TPS con el nombre de la empresa y el nombre de la base de datos). Una vez hecho esto cambiás tu cadena de conexión de modo que tome la base de datos de la empresa seleccionada.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog

JavierC
Novato
Mensajes: 24
Registrado: Vie Sep 07, 2012 11:15 pm
Contactar:

Re: Una base por empresa

Mensaje por JavierC » Vie Jun 14, 2013 1:26 pm

Gracias Mauricio por tu respuesta.
Tu primer opcion la habia contemplado.
Con respecto a la segunda opcion (comprendi perfectamente tu idea); es posible tener 2 cadenas de conexión simultaneas? Te explico: base con los archivo comunes utilizados por todas las empresas (basecomun), ej.: Clientes y Provedores (cadena de conexion 1). Base utilizada por empresa 1 (baseemp1), por la empresa 2 (baseemp2),....,ej.:Plan de Cuentas, Facturas Vtas (cadena de conexion 2) aclaro todas las bases de empresas tendran la misma cadena de conexión, ya que esta será asignada, como dijo Mauricio, en el archivo TPS de empresa.
Tener en cuenta que cuando estoy dentro de una base de empresa (baseemp1) cargando facturas, necesito consultar la tabla de clientes o proveedores que se encuentra en otra base (basecomun).
Mi idea es:
Declarar una variable global en owner name !Glo:ConecionComun para la base cumun (basecomun) y otra variable !Glo:ConexionEmpr para la bases de empresas (baseemp1), para poder trabajar con ambas al mismo tiempo.
Esto es posible?
Espero haberme explicado.
Saludos.
Gracias

Avatar de Usuario
Mauricio
Desarrollador de Clarion
Mensajes: 1125
Registrado: Dom Feb 06, 2011 9:34 am
Ubicación: España
Contactar:

Re: Una base por empresa

Mensaje por Mauricio » Vie Jun 14, 2013 1:29 pm

Si, se puede.
Mauricio, básicamente usando Clarion 6.3
www.tdcsoftware.com y www.clarioneros.com/blog

JavierC
Novato
Mensajes: 24
Registrado: Vie Sep 07, 2012 11:15 pm
Contactar:

Re: Una base por empresa

Mensaje por JavierC » Vie Jun 14, 2013 1:35 pm

Gracias Mauricio nuevamente.
Saludos.


Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados