Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

josewilson

sistema com varias empresas

Recommended Posts

Pessoal, estou desenvolvendo um sistema onde nele há varias empresas, onde cada empresa gera uma ordem de serviço

 

Tabelas

 

empresa

 

codigo_empresa (PK) | nome_empresa |

 

os

 

codigo_os (PK) | codigo_empresa (FK)

 

O Problema

 

Como as empresas vão gerando OS's não vou poder usar o codigo_os como referência, somente se houvesse uma empresa usando o sistema, por exemplo:

 

codigo_os | codigo_empresa

1 | 1

2 | 1

3 | 2

4 | 3

 

Como não vou poder mostrar esse codigo_os para o usuário gostaria de saber se alguém tem uma solução alternativa

 

Algumas Soluções

 

Uma das soluções que pensei era verificar quantas OS's tem com codigo_empresa = 1 e somar +1 no codigo_os_empresa da OS, por exemplo:

 

codigo_os | codigo_os_empresa | codigo_empresa

1 | 1 | 1

2 | 2 | 1

3 | 1 | 2

4 | 1 | 3

 

Mas não gostei muito dessa ideia, acho que perderia performance e não estaria 100% seguro caso deletasse uma OS

 

Outra solução que penso seria criar um banco de dados para cada empresa com a mesma estrutura de tabelas, resolveria o problema, mas penso na manutenção, na hora de alterar uma tabela teria de alterar para todos os bancos

 

Gostaria de saber a opinião de vocês, se alguém já passou por esse tipo de problema e se vocês tem alguma solução bacana para a situação

Compartilhar este post


Link para o post
Compartilhar em outros sites

O sistema será o mesmo para todas as empresas ?

As OS podem ter "banguelas" (sequencias faltantes) ?

 

Está discussão uma tabela x n tabelas para sistemas desre tipo é duscussão recorrente aqui, dê uma pesquisada.

http://pt.stackoverflow.com/questions/19328/gerar-ids-sequenciais-sem-perder-a-sequencia/19396?noredirect=1#comment36052_19396

 

Debate sobre isto (sequencias) no sql server mss serve dm parte para outros bds.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim o usuário faz o login pelo CNPJ da empresa e o sistema exibe somente os dados daquela empresa, mas todas as empresas estariam usando a mesma tabela de OS, Motta essa é uma boa prática o que você acha?

 

Estou usando MySQL

 

Sim, o usuário poderia deletar uma OS

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie então um tabela com o último número da OS dd cada empresa, controle por transaction , pode ficar um pouco mais lento mas é a melhor prática na minha opinião.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.