pues yo he entendido otra cosa distinta, y como esto es un foro para opinar.... pues opino
Yo lo que haría es guardar la clave primaria del registro del grid, y pasar ese valor de una ventana a otra.
Normalmente eso se hace con ventanas modales, es decir, la ventana del grid la muestras con:
Código Delphi
[-]
if ventana.showmodal = mrOk then
begin
tabla.locate('nombreCampo', ventana.Elegido,[]);
end;
FreeAndNil(ventana) ;
Y ahora en la ventana del Grid ponemos dos BitBtn, uno de aceptar con su propiedad ModalResult a mrOk y otro bitBtn de cancelar con mrCancel (por ejemplo)
Por supuesto necesitas una variable 'Elegido' de tipo String, o del valor que sea la clave primaria de tu tabla. En el evento Onclick del boton aceptar pones:
Código Delphi
[-]
Elegido := DatasetDelGrid.FieldByName('NombreCampo').AsString;
Un saludo