Probablemente vos no le estas asignando un valor a la llave primaria a dicho registro desde delphi, o bien lo estas modificando en triggers before insert en la base de datos. Si esto es así, mdo no podrá localizar el registro en la base de datos después de realizada la inserción y por tanto no puede dejarlo como "registro activo".
Hasta luego.