Multi-Empresas

Olá pessoal,

Vi algumas informações sobre mult-empresas, acho q algumas estão meio desatualizadas pq foi em 2007 e hoje trabalho com a SC 5.2.

Bom, gostaria de saber como posso fazer uma aplicação nos moldes abaixo:

Eu tinha uma loja virtual em um site e pagava um valor X para usar o sistema, fiz um cadastro, recebi um email de confirmação e a minha loja já estava pronta.

Agora, como posso fazer uma aplicação nestes moldes?
Gostaria de oferecer a aplicação que estou desenvolvendo para várias pessoas.

Tb vi no forum que tinha um exmplo de multi-empresa, mas não existe mais.

Alguém pode me ajudar?

Obrigada

estou fazendo algo parecido podemos trocar mais dicas e ideias

Adriana,

Isso é mais fácil do que parece.

Vc só precisa de uma tabela, que pode ser CLIENTE, e associar usuários a clientes.

Depois é criar um campo para gravar o ID do cliente em praticamente todas as tabelas. Em relatórios por exemplo, vc vai filtrar os dados pelo ID do cliente. O ID do cliente é quem separa os dados na tabela, diz quem é de quem.

No login vc vai ter que trabalhar o código para levantar o ID do cliente numa global.

É mais ou menos isso.

Fiquei um pouco atrapalhada Cleyton.

Eu teria que ter um controle sobre os clientes certo. Essa tabela que vc mencionou tem que ficar junto da App que desenvolvi ou tenho que fazer a parte uma área de controle? Pois tenho que ter dados das empresas e clientes que alugarei o sistema né?

Vc pode me dar mais alguns exemplos?

Vc só precisa de uma tabela, que pode ser CLIENTE, e associar usuários(app) a clientes(app).

Como fazer esta associação pela ligação?

No caso eu cadastraria o Cliente/empresa em um formulário e daria permisão para ele acessar o sistema e com isso ele poderá usar o sistema com a base de dados dele?

Como vou separar a base de dados do CLIENTE/EMPRESA 1 do CLIENTE/EMPRESA 2 e etc.?

Então,

Vamos supor um cenário:

Vc tem uma tabela de propostas. Se vc tem um projeto multi-empresas, nesta tabela de propostas vc tem que ter o ID da empresa para poder separar qual proposta é de qual cliente.

Então vc teria uma tabela para cadastrar seus clientes, quem comprou o sistema de vc, e em todas as outras tabelas do sistema vc tem quer ter o ID do cliente, dono do registro. Vc tem quer ter um relacionamento entre a tabela de cliente e as outras que usam o ID do cliente (chave estrageira).

No login vc vai levantar o ID do cliente numa global, [par_id_cliente], para poder utilizar nas aplicações. Tipo no cadastro de uma proposta, no campo que guarda o login do cliente, vc utilza como atribuição de valores [par_codigo_cliente], que foi levantada quando um usuário fez login, e sempre que gravar na tabela de propostas, vai gravar o código do cliente.

No login
[par_id_cliente] = 1;

Nas propriedades de atribuição de valores ou no valor inicial do campo que guarda o ID do cliente
[par_id_cliente]

Numa consulta que o cliente só pode ver as propostas dele
select * from tab_propostas where id_cliente = [par_id_cliente]

Entendi Cleyton.

Quando finalizar a minha App vou fazerum teste pra ver como funciona.

Por acaso, vc sabe quem tem um exemplo de aplicação multi-empresa?

Exemplo para disponibilzar banco + aplicações não sei, mas aqui no fórum, dos usuários mais antigos, todos tem algum projeto que envolve este conceito.

Mas não tem segredo não, quando for implementar, estamos aqui para ajudar.