Fórum Listar Grupo e Sub Grupo de produto #367145
15/12/2008
0
Presciso tirar relatorio da seguinte forma : se eu pedir para listar todos os prod. GRUPO 005 ok, mas se eu pedir pra tirar a listagem de todos os prod. do GRUPO 001 q eh o pai do grupo 005, os prod. do grupo 005 nao saem. segue a estrutura das tabelas usada. Utilizo D7 e interbase.
Obrigado.
TABELA produto :
CODPRODUTO
CODGRUPO
DESCRICAO
QUANTIDADE
TABELA grupo :
CODGRUPO
CODPAI
NOME
Walter Faria
Curtir tópico
+ 0Posts
24/12/2008
Pestana_
é isso que você quer?
select * from produto p inner join grupo g on(p.codGrupo = g.codGrupo)
Gostei + 0
26/12/2008
Walter Faria
TBPRODUTO
CODPROD
CODGRUPO
PRODUTO
TBGRUPO
CODGRUPO
CODGRUPOPAI
GRUPO
SE VCS PODEREM ME AJUDAR...
OBRIGADO
Gostei + 0
26/12/2008
Pestana_
é isso que você quer? como você deseja fazer?
Gostei + 0
27/12/2008
Walter Faria
Mas seria assim o relatorio
cod produto grupo subgrupo
1 Premiatta racao filhote racao filhote
2 premiatta racao adulto racao adulto
No filtro (GRUPO) do relatorio , iria colocar somente ( racao ) dai me trouxesse esta lista acima. Se no filtro ( GRUPO ) eu colocasse somente FILHOTE iria me trazer assim :
cod produto grupo subgrupo
1 Premiatta racao filhote racao filhote
Gostei + 0
27/12/2008
Pestana_
with query do begin close; sql.clear; sql.add(´select *, (select grupo from tbGrupo ´+ ´where g.codGrupoPai is not null ´+ ´and codGrupo = g.codGrupoPai) grupoPai ´+ ´from tbProduto p inner join tbGrupo g on(p.codGrupo = g.codGrupo) ´+ ´where g.codGrupo = :id´); params[0].AsInteger := StrToInt(Trim(edtCodGrupo.Text)); open; end;
depois você adiciona o valor dos campos no relatorio.
Gostei + 0
29/12/2008
Walter Faria
SelectMateriaPrima.CodMateriaPrima, MateriaPrima.Descricao as MateriaPrima,
SubExtrato.Nome as Unidade, MateriaPrima.Fabricante, MateriaPrima.Estoque, Embalagem.Nome as Embalagem,
(select Nome from Grupo g where g.Pai is not null and codGrupo = g.Pai) as grupoPai,
Sum(PedidoItem.Qtde) as TotalComprado, Sum(PedidoItem.Qtde * MateriaPrima.PesoLiq) as Liquido
From MateriaPrima
Inner Join PedidoItem on PedidoItem.CodProduto = MateriaPrima.CodMateriaPrima
Inner Join Pedido on Pedido.CodPedido = PedidoItem.CodPedido
Inner Join SubExtrato on SubExtrato.CodSubExtrato = MateriaPrima.CodUnidade
Left Join Embalagem on Embalagem.CodEmbalagem = MateriaPrima.CodEmbalagem
inner join Grupo g on MateriaPrima.codGrupo = g.codGrupo
Where Pedido.Data Between :Inicio AND :Final
Group By MateriaPrima.CodMateriaPrima, MateriaPrima.Descricao, SubExtrato.Nome, MateriaPrima.Fabricante, MateriaPrima.Estoque, Embalagem.Nome, Grupo.Nome
Order By MateriaPrima.Fabricante, MateriaPrima.Descricao
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)