Ir para conteúdo
Fórum Script Brasil
  • 0

Problema Ao Calcular Coluna No Dbgrid Entre Duas Datas


Spectro

Pergunta

Tenho o seguinte ploblema... Numa DBGrid quero somar o valor total de uma coluna entre um intervalo de datas

exemplo sql:

...//

select CD_CONTA, NM_CONTATO, DT_VENC, VALOR,

sum(VALOR) as TOTAL

from CONTAS

where DT_VENC between :data1 and :data2

group by CD_CONTA, NM_CONTATO, DT_VENC, VALOR

//...

o problema é que esse código só me retorna o valor de uma linha apenas, se as datas tiverem entre dia 10 e dia 20 e no intervalo desses dias haver 5 valores, esse código não me retorna o total dos 5 valores, apenas o valor que está em focus.

se alguém puder ajudar agradeço vlw!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Oi.

Você não está sendo muito claro... e provavelmente usando a query incorretamente...

Então:

O que você quer realmente?

O total a receber, por data?

select sum(valor) as soma, dt_venc
from 'contas.dbf'
where dt_venc between '12/01/2006' and '12/31/2006'
group by dt_ven
Um registro para cada data, com o total a receber nesta data, dentro do período indicado O total a receber, por pessoa?
select sum(valor) as soma, nm_contato
from 'contas.dbf'
where dt_venc between '12/01/2006' and '12/31/2006'
group nm_contato

Um registro para cada pessoa, com o total a receber por pessoa, dentro do período indicado

Ok?

Link para o comentário
Compartilhar em outros sites

  • 0

Oi.

Você não está sendo muito claro... e provavelmente usando a query incorretamente...

Então:

O que você quer realmente?

O total a receber, por data?

select sum(valor) as soma, dt_venc
from 'contas.dbf'
where dt_venc between '12/01/2006' and '12/31/2006'
group by dt_ven
Um registro para cada data, com o total a receber nesta data, dentro do período indicado O total a receber, por pessoa?
select sum(valor) as soma, nm_contato 
from 'contas.dbf'
where dt_venc between '12/01/2006' and '12/31/2006'
group nm_contato

Um registro para cada pessoa, com o total a receber por pessoa, dentro do período indicado

Ok?

ok vou tentar esclarecer, o que eu quero é isso mesmo que você falou, tipow

total a receber por data

select sum(valor) as soma, dt_venc

from 'contas.dbf'

where dt_venc between '12/01/2006' and '12/31/2006'

group by dt_ven

então vamos dizer que entre essas duas datas (12/01/2006' and '12/31/2006') por exemplo tenha 3 registros

-------------------- DT_VENC ---|- TOTAL

DBGrid linha 1 - 15/06/2006 - 150,00

DBGrid linha 2 - 26/07/2006 - 100,00

DBGrid linha 3 - 01/10/2006 - 250,00

Então o campo SOMA deverá retornar 500,00 certo?

pois então, o campo SOMA apenas retorna 150,00, e se eu apontar para a segunda linha o campo SOMA retorna 100,00. A soma que deveria ser mostrada seria 500,00 mas isso não acontece, provavelmente é algum erro da sql, mas já tentei alterar de várias maneiras mas não teve jeito.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...