Ver la Versión Completa : Suma el dBgrid vertical
gianfranco_tont
21-02-2012, 06:20:46
Ya logre que me hiciera la suma en un dbgrid horizontal ahora solo me falta hacerlo vertical: quiero que me sume todas la columna del total y que me lo refleje en un edit.text. Alguien puede indicarme como hacerlo? Olvide comentarle, que tengo un dbgrid atado a un dataste atravez de un datasource y un datasetprovider a un adoquery.
olbeup
21-02-2012, 08:56:24
Hola gianfranco_tont
Lo puedes hacer de dos formas.
1.) Registro a registro
...
var
ImporteTotal: Extended;
begin
with adoquery do
while (not eof) do
begin
ImporteTotal := ImporteTotal + FieldByName('TOTAL').AsFloat;
Edit1.Text := FormatFloat('#,#0.00', ImporteTotal);
Next;
end;
end;
2.) Por SQL
...
var
ImporteTotal: Extended;
begin
with adoQry do
begin
SQL.Clear;
SQL.Add('SELECT');
SQL.Add(' SUM(TOTAL) AS IMPORTETOTAL');
SQL.Add(' FROM Pedido');
SQL.Add(' WHERE IDPEDIDO = 45');
Open;
ImporteTotal := FieldByName('IMPORTETOTAL').AsFloat;
Edit1.Text := FormatFloat('#,#0.00', ImporteTotal);
Close;
end;
end;
Espero que te sirva o te oriente.
Un saludo.
gianfranco_tont
21-02-2012, 18:12:11
Lo hice con la primera pero cuando paso al próximo registro no me hace la suma simplemente me muestra el valor de total del registro donde estoy ubicado.
olbeup
01-03-2012, 09:01:59
No debería de darte problemas, Prueba esto otro:
...
var
ImporteTotal: Extended;
begin
ImporteTotal := 0;
with adoquery do
while (not eof) do
begin
ImporteTotal := ImporteTotal + FieldByName('TOTAL').AsFloat;
Next;
end;
Edit1.Text := FormatFloat('#,#0.00', ImporteTotal);
end;
Un saludo.
Casimiro Notevi
01-03-2012, 10:11:25
Recuerda ;)
http://neftali.clubdelphi.com/images/UtilizarTAGs.png
.
olbeup
06-03-2012, 08:42:25
Tienes toda la santa razón,
Antes de presentar la respuesta, la realizo en el procesador de texto y cuando me di cuenta ya era demasiado tarde.
Perdón, Sorry, Désolé, Traurig
Un saludo :o
Casimiro Notevi
06-03-2012, 10:02:25
Tampoco es necesario que te hagas el harakiri (http://es.wikipedia.org/wiki/Harakiri) :)
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.