Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Table Buffering, Detecting a Record Delete by Another Us
Message
 
To
17/09/1997 14:40:08
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
00050289
Message ID:
00050504
Views:
26
>>>>>In VFP5 how do I detect if another user has deleted the current record when table buffering is used?
>>>>
>>>>GETFLDSTATE(cFieldName | nFieldNumber [, cTableAlias | nWorkArea])
>>>>
>>>>Returns Numeric
>>>>
>>>
>>>Thanks for your reply.
>>>
>>>I played with this function and it appears that it only works on records that I have deleted. I want to know if another user has deleted it.
>>
>>Just a few thoughts.....
>> GetFldState should work on the table therefore applies to all users. (but I have had problems with it in the past)
>> If the record in question was marked for delete than recalled it will still show up as status changed.
>> If the first number is returned as 2 then it could have been triggered by a edit also.
>> Deleted() could be used.
>>Correct me if anyone disagrees..........
>
>I have run test after test with two sessions of foxpro and GetFldState returns values based on the edits made in the current session only. Does any one have a reliable way to check the deletion status from disk when a table has record buffering enabled? Curval() returns the value of a field from disk, there should be some way to return deletion status from disk.

Dan, I haven't tried this, but you could load 2 copies of the table in question. The first is used for editing. When you wish to check the delete status, USE MyTable AGAIN... and check the record in question with DELETED(). Slow, but accurate as of the time you do the USE...AGAIN command.

Interesting problem...

Barbara
Barbara Paltiel, Paltiel Inc.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform