Duvida na criação dessas tabelas

09/06/2006

0

estou em um projeto onde o cliente fabrica uns produtos.
vou tentar exemplificar com um omelete:

pra fazer o omelete é preciso:

ovos
bacon
queijo
condimento

entao na tabela INGREDIENTES

codigo | ingrediente
1      | ovos
2      | bacon
3      | queijo


na tabela PRODUTOS
codigo |  produto
1      |  omelete


na tabela RECEITA

codigo |codigo_produto |codigo_ingrediente
1      |1(omelete)     |1(ovos)
2      |1(omelete)     |2(bacon)
3      |1(omelete)     |3(queijo)


até aí tudo bem, mas eu preciso controlar os preços dos ingredientes e dos produtos:

tenho uma tabela de compras, onde eu pego o valor total da compra, e uma tabela de itens_da_compra
onde eu passo o codigo dessa compra, o codigo de cada ingrediente, e o preço.

ex:

COmpras

codigo  | codigo_compra | codigo_ingrediente |valor_unitario | qtde | total
1       | 1             | 1                  | 0,10          | 12   | 1,20
2       | 1             | 3                  | 7,00          | 0,5  | 3,50
3       | 1             | 2                  | 8,50          | 1    | 8,50


só que eu tinha 20 ovos no estoque que sobraram da ultima compra e eles custaram 2,40 a duzia, ou seja 0,20 cada um.
entao eu tenho 32 ovos no estoque, sendo que 20 custaram 0,20 e 12 0,10

o problema está aqui: como eu gero um custo da receita?
qual a maneira correta de guardar os preços dos ingredientes e dos produtos? eu pensei em por um campo
valor_compra na tabela de ingredientes e sempre por o ultimo preço pago por ele? é certo assim?

Valeu

[quote:fef254defa=´Moderação´][b:fef254defa][color=blue:fef254defa]Tópico movido por Vinicius2K:[/color:fef254defa][/b:fef254defa]
[b:fef254defa][color=red:fef254defa][list:fef254defa][*:fef254defa]Fórum original: Firebird[/list:u:fef254defa][/color:fef254defa][/b:fef254defa]
Por favor, poste as mensagens nos grupos corretos, conforme orienta as [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]Regras de Conduta[/url].[/quote:fef254defa]


M@gnun

M@gnun

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar