Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou fazendo um sistema de vendas, onde em uma venda eu posso adicionar 1 ou vários itens (máximo 20 itens) por venda. Tenho a tabela item_venda, que é onde os itens de uma venda devem ser adicionados e a tabela venda, que é onde associa uma venda aos itens dela.
O que procuro é uma solução pra poder registrar o conjunto de item numa venda.
Quem puder ajudar, agradeço.
>
basta você ter um código de venda na tabela de ligação....
fk_item fk_cliente codigo_venda
1 1 1
3 1 1
5 1 1
2 2 2
Assim, na hora de consultar quais itens foram comprados, basta ver os que tem o mesmo código de venda igual.
Obrigado pela ajuda,
Até ai eu consegui pensar. A questão não tá nas tabelas do banco e como elas vão se comunicar. Minha dificuldade é fazer com que todos os itens de uma venda sejam salvo com o mesmo id (que seria esse codigo_venda que voce mostrou ai) e fazer com que todos os itens de uma proxima venda, também sejam salvos com o mesmo id, que obviamente tenha que ser diferente do id da venda anterior.
Não sei se consegui ser claro, mas posso explicar novamente se não entender.
Sugestão: crie uma rotina que, ao cadastrar uma compra, gere um código. Salve todos os produtos da sua compra com esse código (lembre que este código não é primary key nem unique).
Depois, nas compras posteriores, vc busca nessa tabela de relacionamento qual o maior código cadastrado e incrementa +1 nele para gerar o próximo.
Ex: a primeira compra tem o código 1... da segunda em diante, antes de cadastrar a compra, faça uma busca tipo:
SELECT codigo_venda FROM produto_venda ORDER BY codigo_venda DESC LIMIT 1;
Ai vc tem o código da ultima venda cadastrada e pode inserir nova venda apenas incrementando esse :)
basta vc ter um código de venda na tabela de ligação....
fk_item fk_cliente codigo_venda
1 1 1
3 1 1
5 1 1
2 2 2
Assim, na hora de consultar quais itens foram comprados, basta ver os que tem o mesmo código de venda igual.