Fórum soma de valores #307404

02/01/2006

0

Oi Uso Delphi 6 e Firebird 1.5 com componentes Interbase

Fiz uma rotina para pegar umas movimentações e no meio dela faço uma procura por aqueles que não estejam em um segundo select indicado nela

select Distinct CadCli_Forn.CodCli_Forn,
CadCli_Forn.NomeFantasia, CadCli_Forn.Ativo,
CadCli_Forn.Tipo, CadCli_Forn.RazaoSocial,
CadCli_Forn.CodCidade, CadCli_Forn.CodGrupo,
CadCli_Forn.CodSubGrupo,
Sum(MovProdutos.ValorTotal) ValorTotal,
Sum(MovProdutos.ValorPago) ValorPago
from CadCli_Forn
inner Join MovProdutos on (MovProdutos.CodCliente = CadCli_Forn.CodCli_Forn)
inner Join CadTipoDocumentos on
(MovProdutos.CodTipoDocumento = CadTipoDocumentos.CodTipoDocumento)
inner Join UsoGruFinan on (UsoGruFinan.CodGrupo = CadCli_Forn.CodGrupo
and UsoGruFinan.Uso = ´S´
and (UsoGruFinan.CodSubGrupo = CadCli_Forn.CodSubGrupo
or UsoGruFinan.CodSubGrupo = ´0´))
where (UsoGruFinan.CodTipoMovFinanceiro = 21)
and (MovProdutos.ValorTotal > MovProdutos.ValorPago)
and MovProdutos.CodTipoDocumento = CadTipoDocumentos.CodTipoDocumento
and MovProdutos.CodFilial = 1
and (MovProdutos.CodTipoDocumento < 1000
and CadTipoDocumentos.AtualFinanceiro = ´N´
and CadTipoDocumentos.AtualContabilidade = ´S´
and not(MovProdutos.CodMovProdutos in
(Select IndicaNota.CodMovNota from IndicaNota,
MovProdutos where IndicaNota.CodMovPaga = MovProdutos.CodMovProdutos
and IndicaNota.CodFilial = MovProdutos.CodFilial
and IndicaNota.CodFilialNota = 1
and IndicaNota.Valor > IndicaNota.ValorPago
and MovProdutos.CodTipoDocumento < 1000)))
and (CadCli_Forn.Tipo = ´C´
or CadCli_Forn.Tipo = ´A´)
and (CadTipoDocumentos.CodNatureza = 4
or CadTipoDocumentos.CodNatureza = 6
or CadTipoDocumentos.CodNatureza = 3)
and (CadCli_Forn.Tipo = ´C´
or CadCli_Forn.Tipo = ´A´)
and (CadTipoDocumentos.CodNatureza = ´4´
or CadTipoDocumentos.CodNatureza = ´6´
or CadTipoDocumentos.CodNatureza = ´3´)
group by CadCli_Forn.CodCli_Forn,
CadCli_Forn.NomeFantasia, CadCli_Forn.Ativo,
CadCli_Forn.Tipo, CadCli_Forn.RazaoSocial,
CadCli_Forn.CodCidade, CadCli_Forn.CodGrupo,
CadCli_Forn.CodSubGrupo
order by CadCli_Forn.NomeFantasia


Retirei da rotina as aspas e demais acessorios para ficar mais visível.

ele me mostra todos os clientes que eu quero, mas a somatoria de cada cliente não retira as movimentações que estão no select alguem saberia me dizer porque.

Agradeço antecipadamente qualquer ajuda.


Salupe

Salupe

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar