Fórum somar colunas do dbgrid #319113

13/04/2006

0

Srs,

alguém já conseguiu somar duas ou mais colunas e mostrar a soma em uma outra coluna do dbgrid , sem usar queries ?
O dados vem de uma tabela teporária criada por um Clientdataset .
E o dbgrid esta liagado ao Clientdataset por um datasource.

Estou, sem idéias!

Grato!
erivando


Erivando

Erivando

Responder

Posts

14/04/2006

Sremulador

Você pode utilziar variaveis
ex
var
Total: Currency;
begin
if not tabela.eof then
repeat
total:= total + tabela.fieldbyname(´´).ascyrrenci;
tabela.nex;
until tabela.eof
caption.text...:= total...

claro que você tera que transformar o total para tipo texto, você pode utilizar o format flolat...


Responder

Gostei + 0

14/04/2006

Martins

Srs, alguém já conseguiu somar duas ou mais colunas e mostrar a soma em uma outra coluna do dbgrid , sem usar queries ? O dados vem de uma tabela teporária criada por um Clientdataset . E o dbgrid esta liagado ao Clientdataset por um datasource. Estou, sem idéias! Grato! erivando


Seguindo a mesma linha do colega [b:862be72619]sremulador[/b:862be72619], vc consegue o q deseja, a menos q tenhamos entendido errado.

var
  valor : real;
begin
   cds1.first;
   valor := 0;
   while not cds1.eof do
     begin
        cds1.edit;
        Valor := (Valor + Cds1.FieldByName(´Preco1´).AsCurrency +  
                      Cds1.FieldByName(´Preco2´).AsCurrency);
        cds1.FieldByName(´Total´).AsCurrency := Valor;
        Cds1.Post;
        cds1.next;
     end;
   ShowMessage(´Valores atualizados com sucesso...!´);
end;


boa sorte!


Responder

Gostei + 0

16/04/2006

Erivando

[quote:117dce981c=´INFORAMOS´]Srs, alguém já conseguiu somar duas ou mais colunas e mostrar a soma em uma outra coluna do dbgrid , sem usar queries ? O dados vem de uma tabela teporária criada por um Clientdataset . E o dbgrid esta liagado ao Clientdataset por um datasource. Estou, sem idéias! Grato! erivando


Seguindo a mesma linha do colega [b:117dce981c]sremulador[/b:117dce981c], vc consegue o q deseja, a menos q tenhamos entendido errado.

var
  valor : real;
begin
   cds1.first;
   valor := 0;
   while not cds1.eof do
     begin
        cds1.edit;
        Valor := (Valor + Cds1.FieldByName(´Preco1´).AsCurrency +  
                      Cds1.FieldByName(´Preco2´).AsCurrency);
        cds1.FieldByName(´Total´).AsCurrency := Valor;
        Cds1.Post;
        cds1.next;
     end;
   ShowMessage(´Valores atualizados com sucesso...!´);
end;


boa sorte![/quote:117dce981c]

mas como saber qual coluna está selecinada no dbgrid ?
pode ser quando clicar em um botão obter o resultado de soma na outra coluna do dbgrid que poderar ser definida.

deu para enteder?


Responder

Gostei + 0

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

Aceitar