Hiya Rich,
I believe your record pointer is not moving off the deleted record and that is why you're seeing it. By bypassing the endscan, you're also bypassing the implied skip that goes along with it. Try putting a ? recno() in the loop and you should see what I mean. I agree with the others here that have already said that scan for not deleted() would be a better approach.
>>Steve,
>> [snip]
>>2) I'd add a not DELETED() to the SCAN for clause
>
>I'm confused. Lots of people besides Jim have said this.
>
>If SET DELETED is ON, SCAN is already SCAN FOR NOT DELETED(). Or what am I missing?
>
>- Rich.
kenweber
GCom2 Solutions
Microsoft Certified Professional