Hi David,
Normally, you would not restrict deletion of a child record if a parent record exists, but I guess anything can be written into a custom RI routine.
Another thing to check: Since you are using optimistic buffering, could there be another process with the table open (maybe a cursor/view that uses the table) that might prevent the lock from occuring to perform the delete?
Mike
>Just a guess,
>
>Is there any RI code in that is restricting deletion if parent record exists?
>
>
>
>>I have a form which has an optimistically buffered table in the DE.
>>During an edit process I delete some records from this table (which is a child table)
>>During the save process I detect the deletions because the GetFldState() returns '21111111' for each record.
>>If I browse the table (from the debugger) at this point I can see the delete marks are on.
>>I then proceed to the TableUpdate(.T., .T.) command and the records become
undeleted. I watch it happen in the browse window
>>
>>At first I thought is was because I was using the new "DELETE FROM ..." SQL delete which I thought must have been acting on the underlying table rather than the buffered copy. But no, I switched to using SCAN.. DELETE ENDSCAN. But got the same result
>>
>>I'm now thoroughly confused and am going home !
>>
>>Any one got a clue?
Michael P. Antonovich, MCSD
Email: mike@micmin.com
MicMin Associates - Orlando, FL