I have had a similar problem recently with grids. Quick question...
Have you ever changed the DataSessionID from within the forms?
I have noticed that the "grid.RecordSource" property will lose it's value at some point when the DataSessionID is manually changed. Very annoying!