I have a grid displaying a cursor for timesheet entry. I have command buttons for duplicating a record or making a new entry so that I have more control over what the user does. I also display the time totals on the screen so the command buttons allow a snapshot of time values before and after changes. Whenever the record pointer may be moved, I grab the recno() and make sure to return to it, then refresh or setfocus. Somehow when I am updating fields in code from another table and the record pointer is not moving on the cursor, I return to the cursor and setfocus to the grid and duplicate records appear in the screen. I have SET STEP ON to see what is happening and if I browse the cursor there are actually extra records that I cannot click on and the the record/record count in the status bar show less total records than I can see. For example, I have 5 records, yet the display has 7, in browse I can see 7 but I can only click on 5 of the records. Any ideas?