PROBLEMA COM SQL

GUSTAVOCANALLI 18/11/2009 15:26:27
#328086
E AI GALERA BLZ?

TEM COMO ME AJUDAR COM UMA SQL?

ESSE SELECT FAZ O UPDATE NA TABELA DE INGREDIENTES DE ACORDO COM OS INGREDIENTES VINCULADOS AO PRODUTO.

TENHO A TABELA PRODUTO CADASTRANDO PIZZAS. E UMA PIZZA PODE TER VARIOS INGREDIENTES VINCULADOS.
ENTAO NA HORA DE VENDER A PIZZA, DEVE-SE SUBTRAIR DA TABELA INGREDIENTE A QTADE DE KD INGREDIENTE VINCULADO AO PRODUTO.

E NO CASO DE PIZZA MEIO-A-MEIO TERIA QUE TIRAR SÓ A METADE.

UPDATE PIZ_INGREDIENTE
SET ING_IN_ESTOQUE = ING_IN_ESTOQUE - @PQUANTIDADE * (
SELECT ITI_IN_QUANTIDADE
FROM PIZ_ITEMINGREDIENTE ITI
WHERE ITI.ING_IN_CODIGO = ITI.ING_IN_CODIGO
AND ITI.PRO_IN_CODIGO = @PPRODUTO)
WHERE ING_IN_CODIGO IN (
SELECT ING_IN_CODIGO
FROM PIZ_ITEMINGREDIENTE ITI
WHERE ITI.PRO_IN_CODIGO = @PPRODUTO);

EU TENTEI FAZER ASSIM. MAS NAO DEU CERTO

UPDATE PIZ_INGREDIENTE
SET ING_IN_ESTOQUE = ING_IN_ESTOQUE - @PQUANTIDADE * (
SELECT ITI_IN_QUANTIDADE
FROM PIZ_ITEMINGREDIENTE ITI
WHERE ITI.ING_IN_CODIGO = ITI.ING_IN_CODIGO
AND ITI.PRO_IN_CODIGO = @PPRODUTO)
WHERE ING_IN_CODIGO IN (
SELECT ING_IN_CODIGO
FROM PIZ_ITEMINGREDIENTE ITI
WHERE ITI.PRO_IN_CODIGO = @PPRODUTO / 2);
DANIKULL 21/11/2009 19:35:42
#328347
GUSTAVOCANALLI, boa noite.

Na minha opniao, acho que você está indo pelo lado errado, deixa eu ter dar uma dica.

Crie no seu sistema o conceito de estrutura e formulas com consumos, como assim????

Faça mais ou menos assim:
Nivel 0 -> Pizza mussarela
Nivel 1 -> Recheio
Nivel 2 -> Mussarela
Nivel 2 -> Oregano
Nivel 2 -> Tomate
Nivel 1 -> Molho
Nivel 2 -> Tempero Completo
Nivel 2 -> Extrato de Tomate
Nivel 2 -> Sal
Nivel 1 -> Massa
Nivel 2 -> Farinha
Nivel 2 -> Ovo
Nivel 2 -> Sal
Nivel 2 -> Fermento

Ai você começa a pensar da seguinte forma:
Para eu fazer 1 pizza vou consumir quanto de material do nivel 1????
Vou precisar de quanto material do nivel 2 para conseguir fazer o nivel 1????

Quando isto estiver pronto basta você vendar a pizza e está lá, todo o consumo sera debitado da forma que você fizer a venda. Se esta for inteira o consumo será integral. Se esta for meia, o consumo será a metade, entendeu???

Usando esta lógica você vai economizar muitas linhas de programação e evitar muita dor de cabeça....

Se precisar mais detalhes e ajuda em montar as estruturas, caso você aceite esta ideia, por contar comigo, ok???/
Tópico encerrado , respostas não são mais permitidas