¡Buen día a todos!
La solución más adecuada es la que propone Antonio. Cuando una rutina necesita crear un objeto que solamente esa rutina utilizará, es conveniente que en ella se tenga el código que destruya el objeto una vez que ya ha sido utilizado. Para asegurar que la memoria ocupada por el objeto sea liberada finalmente, aunque surjan errores (excepciones) en su utilización, suele emplearse un bloque de protección Try-Finally, como bien lo sugiere Antonio.
El problema principal en el código de Xianto es que en lugar de crear el objeto y luego destruirlo, primero tiene el código de destrucción y luego el de creación, de tal suerte, que cuando la rutina termina, el objeto sigue existiendo y adueñado por el objeto «
Self» (considerando que el procedimiento «
Pepe» es en realidad un método de alguna clase de objeto).
Delphi.com.ar: Según el código de Xianto la variable ADORecs si es estática, no dinámica.
Espero esto sea de utilidad, seguimos en contacto.
Al González.