Somar Campo da Tabela
11/08/2004
0
Gostaria de somar todos os valores que estão no campo ´VTotal´ de minha tabela.
Sei q posso ir até o inicio da tabela e com um While ir descendo e somando um a um.
Mas essa opção nao fica muito legal pois quando o usuário abre a tela o GRID mostra o ponteiro descendo. Além disso a tabela tem muitos campo o q faz com q o usuário tenha q ficar esperando chegar no final da tabela para poder ver o resultado e usar a tela.
O que eu queria mesmo era algo que soma-se sem ter que ir registro por registro. Tipo um comando onde eu especificasse a tabela e o campo e ele me desce o tatal. Para que nao fique demorado.
Desde já agradeço.
André Maretti
André Maretti
Posts
11/08/2004
Okama
Var Total: Double;
begin
Query1.SQl.Text := ´Select sum(VTotal) as Total ´;
Query1.Open;
Total := Query1.FieldByName(´total´).asFloat;
end;
11/08/2004
Rômulo Barros
Function CalculaTotal(ATabela,ACampo : String) : Real; Begin Whith Query Do Begin Close; Sql.Clear(); Sql.Text := ´Select Sum(´ + ACampo + ´)From ´ + ATabela; Open; Result := Fields[0].AsFloat; End; End;
[color=red:7d98f1f05d][b:7d98f1f05d]
Para chamar o método, faça assim:[/b:7d98f1f05d][/color:7d98f1f05d]
12/08/2004
Okama
Só configurar o Query para o Alias correspondente.
12/08/2004
Everton Tom
Só configurar o Query para o Alias correspondente.[/quote:9d33bfa3fa]
n entendi!! sera q vc poderia passar p/ mim o codigo em Paradox?!!
como c vc tivesse fazendo isso agora em paradox!! vc passaria p/ mim pode? Desde Agora Agradeço!!!
13/08/2004
Okama
Só configurar o Query para o Alias correspondente.[/quote:2b37b38d16]
n entendi!! sera q vc poderia passar p/ mim o codigo em Paradox?!!
como c vc tivesse fazendo isso agora em paradox!! vc passaria p/ mim pode? Desde Agora Agradeço!!![/quote:2b37b38d16]
É o mesmo código, o que muda é o componente de conexão como SQLQuery, IBQuery, ADOQuery ou Query.
Você vai usar o Query e configurar o Alias, que está sua base Paradox, na propriedade DatabaseName do TQuery.
Clique aqui para fazer login e interagir na Comunidade :)