No entiendo muy bien el motivo, pero me funciona así:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
begin
Dbf1.Close;
Dbf1.Exclusive := True;
Dbf1.Open;
Dbf1.PackTable;
Dbf1.First;
While not Dbf1.EOF do
begin
if Dbf1.FieldByName('C_CONCEPTO').AsString = '' then
begin
Dbf1.Delete;
Dbf1.First;
end
else
Dbf1.Next;
end;
Dbf1.PackTable;
ShowMessage('Proceso terminado');
end;
Lo único que he cambiado es que después de que encuentré
un registro vacío y lo borre vuelva al primer registro yempiece
el recorrido por la tabla de nuevo..
Gracias.