Hi Folks,
I really need your help. One thing first:
I am searching for a solution since month and I have read some hundred
articles about it but I did NOT find the solution. Lots of Postings in
Newsgroups handle it but I have NOT seen the solution!!!
So here we go:
I use Visual Basic 6 ServicePack 5
Access 97 (Jet with SP3?); although I specify Jet 4.0 to use I think
I've read that Jet 3.6 is used with Access 97?!
ADO 2.7
I use disconnected ADO recordsets in my Prog for a Multiuser
environment.
Settings for connection:
Acces*issions: no change
IsolationLevel: no change
CursorLocation: adUseClient
ShareDenyNone + ReadWrite
Settings for recordsets:
adUseClient
therefore: adOpenStatic
adLockBatchOptimistic
I know that a recordset (or each field to be more precise) has an
"UnderlyingValue", "OriginalValue" and "Value". What I expect is, that
ADO (or the Provider) uses "OriginalValue" and "Value" to determine,
if there are any changes since fetch. What I ALSO EXPECT is that ADO
uses "UnderlyingValue" and "OriginalValue" to determine, if the
underlying table was changed. So I would expect that the provider
performs this when/before I do an update of a value!?!
But I get absolutely no warning and the users overwrite their values
without noticing.
I tried a lot of things like transactions but the values will be
overwritten anyway...
I've read a lot about all these things but I can't find my error and
I've seen nowhere the solution.
The solution btw should be quite simple because this should be handled
by the provider automatically...
I just want to a signal that says: the original values have been
changed; do you want to cancel?
If there IS a post providing a solution for EXACTLY this problem,
please tell me where!
BIG thnx
Harald