[firebase-br] Duvida comando Case
Daniel Maranhão
danielmachado em agetop.goias.gov.br
Seg Jun 27 09:45:20 -03 2011
Senhores, Bom Dia
Tenho as seguintes tabelas:
Produto:
- IDPRODUTO
- Nome
Pessoa
- IDPESSOA
- NOME
Entrada:
- IDENTRADA
- PRODUTO_ID
- PESSOA_ID
- DATA_ENTRADA
- QUANTIDADE
- VALOR UNITARIO
- VALOR TOTAL
SAIDA
- IDSAIDA
- DATA_SAIDA
- QUANTIDADE_SAIDA
- PRODUTO_ID
- PESSOA_ID
ESTOQUE
- SALDO
- ULT_PRECO
- PRODUTO_ID
Qual é o problema. Preciso fazer um relatorio de saida. Nesse relatório de
saida, eu pegava o ultimo preço da tabela estoque. Até ai tudo bem. O SQL
Funcionou, está funcionando.
Porém, agora o meu cliente me pediu uma rotina na qual eu as vezes, vou
precisar pegar o preço, da tabela entrada, e nesse mesmo relatório, alguns
items, eu vou pegar o preço da tabela estoque
e alguns items vou pegar da tabela entrada. Porém não estou conseguindo
fazer esse vinculo. Alguem pode me ajudar ? O SQL deve me retornar todos os
items que uma determina pessoa utilizou
O SQL que estou usando é:
select distinct saida.idsaida,
pessoa.nome as cliente,
produto.nome as produto,
produto.servico,
saida.data_saida,
saida.qnt_atendida as quantidade,
CASE
WHEN produto.servico = 1
then entrada.preco_unit
else estoque.ult_preco
end as preco,
case
WHEN produto.servico = 1
then saida.qnt_solicitada * entrada.preco_unit
else saida.qnt_solicitada * estoque.ult_preco
end as total
from saida, produto, pessoa, estoque, ENTRADA
where saida.produto_id = produto.idproduto
and saida.pessoa_id = pessoa.idpessoa
and estoque.produto_id = produto.idproduto
and pessoa.idpessoa = 61
order by saida.data_saida
Fico agradecido por qualquer tipo de ajuda.
Atc,
Daniel.
Mais detalhes sobre a lista de discussão lista