Creo que no has entendido el funcionamiento de Eof. Si revisas la ayuda:
Cita:
Empezado por Ayuda de Delphi
Eof is true when an application:
Opens an empty dataset.
Calls a dataset's Last method. (Unless it is a unidirectional dataset)
Call a dataset's Next method, and the method fails because the current record is already the last row in the dataset.
Calls SetRange on an empty range or dataset.
Eof is false in all other cases.
|
Si revisas con atención la parte en negrita, veras que Eof devuelve TRUE si se llama al método Next cuando ya se esta en el ultimo registro. Por lo tanto, el ultimo registro si que se procesa.