don't know if this is your case, but this could happen when the recourd source of your grid is an Select statment or you make a select statment to an alias, if this is your case try to set the recordsource = "" before running the query something like this
Thisform.grid1.recordSource = []
Select * from whatever into cursor otherthing
Thisform.grid1.recordSource = [OtherThing]
.......
DO WHILE .T.
ME.Work()
ENDDO