Estou com a seguinte duvida.
Tenho um relatorio no qual a pessoa vai passar entre 10 Prod e 10 Qtde desses Prod.
Cada Prod desse digitado e Qtde vai ser uma composicao de um produto em especifico.
Até ai tudo bem consegui fazer uma select que me traga isso, so que ela ta trazendo o seguinte: Vamos supor que digito la 2 produtos so ele me traz no relatorio todos os produtos que são compostos de apenas dois produtos, e que neles contenha pelo menos um Prod digitado por mim como parametro.
E não é isso que eu quero, quero que ele traga apenas os produtos que tenha os dois Prod que digitei e não todos os produtos que tenham duas composicoes de pelo menos um produto que digitei.
Segue a select que fiz:
select t.*,
b.pro_st_alternativo alternativo_item, b.pro_st_descricao descritivo_item,
p.pro_st_alternativo, p.pro_st_descricao
from mgadm.est_produtos p,
mgadm.est_itenslistamateriais t
inner join mgadm.est_produtos b
On (b.pro_tab_in_codigo = t.com_tab_in_codigo
and b.pro_pad_in_codigo = t.com_pad_in_codigo
and b.pro_in_codigo = t.com_in_codigo)
and t.lis_in_revisao = (Select Max(d.lis_in_revisao) From mgadm.est_revisaolistamateriais d
Where d.pro_tab_in_codigo = t.pro_tab_in_codigo
and d.pro_pad_in_codigo = t.pro_pad_in_codigo
and d.pro_in_codigo = t.pro_in_codigo)
where t.pro_tab_in_codigo = p.pro_tab_in_codigo
and t.pro_pad_in_codigo = p.pro_pad_in_codigo
and t.pro_in_codigo = p.pro_in_codigo
and ((b.pro_st_alternativo = &prod1 and t.com_re_segquantidade = &qtde1) or
(b.pro_st_alternativo = &prod2 and t.com_re_segquantidade = &qtde2))
and ( select count(*) from mgadm.est_itenslistamateriais l, mgadm.est_produtos r
where p.pro_tab_in_codigo = l.pro_tab_in_codigo
and p.pro_pad_in_codigo = l.pro_pad_in_codigo
and p.pro_in_codigo = l.pro_in_codigo
And r.pro_tab_in_codigo = l.com_tab_in_codigo
And r.pro_pad_in_codigo = l.com_pad_in_codigo
And r.pro_in_codigo = l.com_in_codigo ) = 2;
O problema ta aqui: ((b.pro_st_alternativo = &prod1 and t.com_re_segquantidade = &qtde1) or
(b.pro_st_alternativo = &prod2 and t.com_re_segquantidade = &qtde2))