Hola compañeros del foro, estoy teniendo problemas con un borrado de datos en un clientDataSet y una resta con los valores mostrasdos en un DBGRid conectado al clientdataset, tengo lo siguiente:
para el borrado de un dato especifico del clientdataset:
Código Delphi
[-]procedure TFFacturar.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_DELETE then
begin
dsFactDetalle.DataSet.Delete;
if ClientDataSet1.RecordCount > 0 then
begin
Total.Text := FLoatToStr(StrToFloat(Total.Text) - ClientDataSet1.Fields[9].AsInteger);
end;
if ClientDataSet1.IsEmpty then
begin
Total.Text := '0.00';
end;
end;
end;
el problema esta en esta linea:
Código Delphi
[-]Total.Text := FLoatToStr(StrToFloat(Total.Text) - ClientDataSet1.Fields[9].AsInteger);
los valores lo muestro en un edit, y el problema que me da es que no me resta los valores correcto, por ejemplo, en el DBGrid, la primera linea tiene un valor de 12 pesos, y las demas lineas son de 24, 36, el edit tiene un valor de 72 pesos, selecciono en el grid la linea con valor 24 por ejemplo, la borro, entonces en el edit me deberia resta 24-72 no?, pues no, siempre me resta el valor de la primera linea que es 12, a que se debe eso?.
Saludos.