Ho dichiarato una Form di visualizazione con proprietà MDChild = True

Su questa form ho messo la MFlexgrid per visualizzare i dati
Dopo averli visualizzati, clicco sul campo (il primo) e mi deve ritornare il valore del primo campo della griglia sulla form chiamante.
Questo funzione e già succede !
Mi succede però che quando chiudo la form con la griglia, al ritorno perdo il record di riferimento sulla form chiamante e mi va tutto a rotoli.
Ovviamente questo non succede quando dalla form con il record selezionato richiamo la questa Form di visualizzazione (dicharata questa volta MDIChild=False) con la griglia e i dati selezionati, la chiudo e ritorno il valore nel campo della form madre.
IL record originario selezionato non lo perdo in questo caso !
Come mai ? come posso fare ?

C'é un modo per evitare di evitare tutto questo senza far impostare sulla Form di visualizzazione la proprietà MDIChild = False?

Grazie