Ir para conteúdo

POWERED BY:

Arquivado

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

dimiguel

Estrutura de banco para produtos seriados

Recommended Posts

Prezados,

 

Estou modelando um banco para um sistema em que serão cadastrados produtos, e estes são seriados. O banco precisa controlar entradas e saídas. Até o momento estou com seguinte estrutura (e travado nisso):

 

- Produtos

- Id

- Nome

 

- Itens

- Id

- ItemId

- ProdutoId

- Serial

 

Ou seja, um item (que nada mais é que o serial do produto) pode ser um item comum ou ser um container (uma embalagem) com outros vários itens, por isso o relacionamento da tabela Itens com ela mesmo. Até aqui tudo aparentemente beleza. O problema se dá na movimentação dessa coisa toda.

 

Estou imaginando fazer assim: ao dar entrada o sistema verifica se o Item já existe, caso não grava no BD. Após isso o id deste Item vai para a tabela Entradas. Ao dar uma saída, o mesmo processo: grava o id do Item na tabela Saidas. Esta correto este procedimento? Meu principal receio, neste caso, é gerar redundância.

 

Ah, o sistema tem outra particularidade: é usado por múltiplas empresas assim, um Item pode "sair" de uma empresa e "entrar" em outra. Tomando como exemplo o ItemId 10: ele entra na empresa X. Depois o ItemId 10 saí da empresa X e entra na empresa Y e, em outra ocasião, saí da empresa Y para outra empresa qualquer. Preciso fazer toda essa rastreabilidade. Cada produto pode ter vários itens. Ainda citanto exemplo, o "Produto A" pode ter 50 caixas (cada caixa tem um serial) e cada caixa ter 30 itens (cada um com um serial diferente).

 

Ficou muito confuso? É, eu também estou queimando neurônios como fazer isso da melhor forma. Será que consigo alguma orientação de que caminho seguir?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Modele primeiro logicamente, modelo lógico, depois comece a pensar no modelo físico.

 

Nos dois processos "faça perguntas" ao modelo baseado nos requisitos e veja se e como ele responde.

 

Não invente a roda, este é um problema recorrente, pesquise se existem publicações com modelos já feitos para isto, estude-os e faça as adaptações necessárias.

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.