First let me point out the obvious item that is often overlooked, that is both the replace and the scan leave the record pointer at EOF() which is a phantom record that looks empty. So before you chekc the record be sure to LOCATE or GO TOP to get off of EOF().