Si lo que quieres es saber cual es el codigo nuevo que se insertó
lo que puedes hacer es una consulta con @@IDENTITY, te paso un ejemplo
Código:
qryLocate.SQL.Clear;
qryLocate.SQL.Text := 'SELECT @@IDENTITY AS NewID';
qryLocate.Active := true;
iNewID := qryLocate.FieldByName( 'NewID' ).Value;
donde:
iNewID es una variable LongInt declarada anteriormente
NewID es un campo ficticio que me arroja el @@IDENTITY, bah usando un alias.
Esto lo ejecutas apenas hagas el insert en la tabla y no te preocupes por todos los eventos de ADO, es más si puedes evitarlos mejor aún.
Bueno espero te sirva esto y Exitos!!!