Não percebo se o teu problema é o desenho do modelo de dados ou se o mesmo já está feito e queres ajuda a escrever os movimentos nesse modelo.
Partindo do principio que estás a desenhar o modelo (porque dizes que estás a fazer o desenvolvimento da aplicação), essa situação resolve-se facilmente com uma tabela em que registas a seguinte informação:
tipo de movimento: Entrada (para dar entrada de stock), Armazém (movido para um armazém), Saída (saída de stock)
produto: chave para o produto em questão
quantidade: quantidade de produtos envolvidos no movimento
data/hora do movimento
armazem de destino (opcional): chave para o armazém para o qual foi feito o movimento
cliente (opcional): chave para o cliente para o qual foi feito o movimento
Este modelo permite-te ter todos os movimentos entre armazéns , saidas para clientes e, obviamente, entrada de stock para armazém.
Por questões de performance, aconselho a ter uma tabela de stocks atual para cada produto por armazém, onde adicionas sempre que há entrada de produto nesse armazém, e subtrais sempre que há saidas desse armazém.
↧