Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

etspaz

rave- como fazer uma banda trabalhar com dois datasets corretamente?

Recommended Posts

bom dia pessoal, eu tenho um relatorio no rave que exibe o total de vendas por tipo de produto, num determinado periodo.

a propriedade dataview de um band esta apontando para um direct view que esta ligado ao dataset no delphi que traz estas informações.

mas, agora preciso exibir no mesmo band o total de itens devolvidos e valor total de devoluções para os mesmos tipos de produtos, tem um dataset que traz estas informações no delphi, mas no rave não consigo exibir todos os dados deste segundo, porque a banda aponta só para o primeiro dataset.

aí fica + ou - assim.

 

total vendas por familia: total de devoluções por familia:

acessório: R$ 12.000,00 R$ 56,00

consumo: R$ 21.000,00 R$ 56,00

odonto: R$ 5.580,25 R$ 56,00

 

observem q o primeiro beleza, mas no total de devoluções só exibe o primeiro registro e quantos forem os registros do total de vendas o total de devoluções se repete.

tentei fazer um select q me desse todos os dados q preciso, assim era só apontar no rave, mas como ainda to aprendendo sql (na verdade sou iniciante em tudo delphi, rave, sql... mas to caminhando), a consulta traz uns resultados estranhos.

se tiver alguma forma de fazer o rave trabalhar com os dois datasets adiantaria bem o meu lado, porque no mesmo relatorio tem outras bandas na mesma situação, é uma especie de mapa diario de todas as atividades.

pensei se tivesse como fazer um loockup entre os datasets no rave, resolveria.

 

caso alguém ache q é mais facil resolver na query, vou colocar as querys do total de venda e devolução:

--total de devolução nas vendas avista por familia
select
	  f.descricao,
	  sum(DI.qtde )qtd_total,
	  sum(devolucao_item_venda.qtde * itemvenda.vl_unitario) valor

from
	DEVOLUCAO_ITEM_VENDA DI
	join itemvenda on (devolucao_item_venda.cod_produto = itemvenda.codprod)
	join PRODUTOS P on (P.codprod = DI.cod_produto)
	join familia F on (familia.codgrupo = produtos.codgrupo)
	join DEVOLUCAO_VENDA DV on (DI.cod_devolucao = DV.cod_devolucao)
	join VENDAS V on (DV.codvenda = V.codvenda)
	join CLIENTES C on (V.codcliente = C.codcliente)
where
	 DV.dt_devolucao between '20.02.2007' and '20.02.2008'
	 and V.tipovenda = 1
	 group by F.descricao

--total de vendas a vista por familia
select sum(itemvenda.qtde * itemvenda.vl_unitario) VL_TOT_VEN_VISTA_FAM, 
familia.descricao 
from familia 
join produtos on (familia.codgrupo = produtos.codgrupo) 
join itemvenda on (produtos.codprod = itemvenda.codprod) 
join vendas on (itemvenda.codvenda = vendas.codvenda) where vendas.tipovenda = 1 
and (vendas.dtvenda between '25.02.2007' and '25.02.2008') 
group by familia.descricao'

vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera, só falta concluir este relatório pra entregar o sistema para os testes, se alguém tiver alguma idéia, por favor, me ajude!

estou sendo cobrado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.