Hola Ivr:
Yo siempre he hecho lo que tú comentas, solo que no utilizo un requery: lo hago yo a mano....
Por ejemplo:
Código:
//CFAMILIAS es un AdoQuery
//Desactivo la consulta
CFamilias.Active:=false;
// Hago la Query de nuevo
CFAMILIAS.SQL.Text:='Select * from familias order by nombre';
//Activo de nuevo la consulta
CFamilias.Active:=true;
Siempre lo he hecho asi y me ha funcionado con cualquier componente y desde un formulario a otro o en el mismo formulario.
Pruébalo, a ver si es así como lo haces...
Saludos.