Ir para conteúdo

POWERED BY:

Arquivado

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

alinesf4

somar valores do DBgrid

Recommended Posts

Boa tarde!!!

 

Preciso somar os valores lançandos num dbgrid e colocar num edit fora do Dbgrid, o usuário estaria lançando as prestaçoes referente a uma despesa.

Como faço para que a cada prestaçao que ela lança já vai somando os valores e aparecendo num edit???

 

 

fico no aguardo, obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você está usando ClientDataSet? Você quer que, a cada registro cadastrado no DBGrid, um valor total seja atribuido ao Edit?

Se sim, você pode no evento AfterPost, percorrer por todos os registros no ClientDataSet, e ir somando seus valores numa variável, e por fim, atribuir tal variável a um campo que aponta para um TField do ClientDataSet, que seria o total. Ou armazenar o valor total numa propriedade.

 

Logo, seria mais ou menos assim:

procedure Datamodule1.ClientDataSet1AfterPost(Dataset: TDataset);
var
 total: double;
 // Poderia ser também integer. Depende do tipo de dados que você vai somar.
 // A variável @total poderia ser um campo privado de uma propriedade pública apenas-leitura
 // que armazenasse o valor dela.
begin
 if (Dataset.State = dsBrowse) then
 begin
   Dataset.First();
   while not Dataset.EOF then
   begin
     total := Dataset.FieldByName('seuCampo').AsFloat;
     Dataset.Next();
   end;
   // Agora você tem o total na variável @total.
 end;
end;

 

@seuCampo é o valor presente na propriedade FieldName dos TFields do ClientDataSet. Esse seria o valor-base pra você chegar ao total, ou seja, aquelas prestações.

 

Caso você não tenha um campo TField pro total no ClientDataSet, experimente guardar o valor da variável total numa propriedade pública, pois assim você poderá pegar o valor dela do seu formulário.

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.