Hola, colocar esto en los eventos AfterDelete y AfterPost de tu dataset, debes adaptarlo a tu manera:
Código Delphi
[-]procedure TFReposicion.cdDetallesAfterDelete(DataSet: TDataSet);
Var
Suma: Double;
Campo: TField;
Begin
Suma:=0;
Try
With cdDetalles Do Begin
DisableControls;
Campo := FieldByName('valor');
First;
While Not EoF Do Begin
Suma := Suma + Campo.AsFloat;
Next;
End;
End;
Finally
cdDetalles.EnableControls;
End;
dsCaja.DataSet.FieldByName('total').AsFloat := Suma;
end;
Saludos.