Olá, pessoal.
construa o grid com a sua tabela e entre no evento click do grid1.column1.header1.text1 se for a primeira coluna que você for utilizar para chamar o outro form. e digite.
É isso mesmo que tem que ser feito. O código tem que ser colocado no componente que está dentro de cada coluna.
Cuidado, porque se o cursor da grid for recriado o VFP colocará novos controles dentro das colunas, e por serem novos, esses controles ficarão sem código.
Observe como recriar o cursor fonte de dados duma grid sem perder códigos contidos nos controles da grid:
thisform.grid1.RecordSource = ""
select * from Clientes into cursor curClientes
thisform.grid1.RecordSource = "curCliente"
thisform.grid1.Column1.ControlSource = "curCliente.Codigo"
thisform.grid1.Column2.ControlSource = "curCliente.Nome"