Soma campo
como posso somar todos os valores de um campo saldo em uma tabela paradox?Quero a soma de tudo o que tiver neste campo
Anonymous
Curtidas 0
Respostas
Okama
14/02/2003
Se você usa Table:
Var Total:Double;
begin
Total:= 0;
Table1.first;
while not Table1.Eof do begin
Total := Total +Table1.FieldByName(´Saldo´).AsFloat;
Table1.Next;
end;
Se usa Query:
Var Total:double;
Begin
Query1.SQL.Text := ´Select Sum(Soma) as Soma from Tabela´;
Query1.ExecSQL;
Total := Query1.FieldByName(´Soma´).AsFloat;
Var Total:Double;
begin
Total:= 0;
Table1.first;
while not Table1.Eof do begin
Total := Total +Table1.FieldByName(´Saldo´).AsFloat;
Table1.Next;
end;
Se usa Query:
Var Total:double;
Begin
Query1.SQL.Text := ´Select Sum(Soma) as Soma from Tabela´;
Query1.ExecSQL;
Total := Query1.FieldByName(´Soma´).AsFloat;
GOSTEI 0
Cruyahoo
14/02/2003
Se for útil pode-se utilizar esta função que é a mesma coisa e reutiliza-la
em qualquer parte do programa. É bem legalzinha funciona bem.
//O tipo TDataset atende a todos os tipos de tabelas TQuery e TTable.
FUNCTION TOTALIZA(TBX:TDataset;TBFd:TField):Real;
//Onde TBX é a tabela ou query que contem o campo
// TBFd é o campo desejado para se somar: ex. TBvendas.Valor
VAR
TBXmarc:TBookmark;
TOTDB:Real;
BEGIN
TBXmarc:=TBx.GetBookmark;//marca local do ponteiro.
TBX.DisableControls;//Desabilita ação da tabela no video.
TOTDB:=0;//Variavel começando com valor zero.
TRY
TBX.First;
WHILE NOT TBX.eof DO
BEGIN
TOTDB:=TOTDB+TBFD.asFloat;
TBX.Next;
END;
FINALLY
TBX.GotoBookmark(TBXmarc);// Volta o ponteiro p/ onde estava.
TBX.FreeBookmark(TBXmarc);// Destroi o marcador.
TBX.EnableControls;
end;
RESULT:=TOTDB;
END;
em qualquer parte do programa. É bem legalzinha funciona bem.
//O tipo TDataset atende a todos os tipos de tabelas TQuery e TTable.
FUNCTION TOTALIZA(TBX:TDataset;TBFd:TField):Real;
//Onde TBX é a tabela ou query que contem o campo
// TBFd é o campo desejado para se somar: ex. TBvendas.Valor
VAR
TBXmarc:TBookmark;
TOTDB:Real;
BEGIN
TBXmarc:=TBx.GetBookmark;//marca local do ponteiro.
TBX.DisableControls;//Desabilita ação da tabela no video.
TOTDB:=0;//Variavel começando com valor zero.
TRY
TBX.First;
WHILE NOT TBX.eof DO
BEGIN
TOTDB:=TOTDB+TBFD.asFloat;
TBX.Next;
END;
FINALLY
TBX.GotoBookmark(TBXmarc);// Volta o ponteiro p/ onde estava.
TBX.FreeBookmark(TBXmarc);// Destroi o marcador.
TBX.EnableControls;
end;
RESULT:=TOTDB;
END;
GOSTEI 0