Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Wanet Telecoms Ltd on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Error 3197 but not corrupt 1

Status
Not open for further replies.

Glasgow

IS-IT--Management
Jul 30, 2001
1,669
GB
I am experiencing an intermittent error 3197 suggesting that two users are accessing the same record but I am the only user. I am aware that this can often be caused by a corrupt memo field but can see no evidence of such corruption within the database (how would it manifest itself?)

Are there any other circumstances when this error might occur and is it possible to generate this error by inadvertently trying to, for example, update a recordset while one of its records is open in another recordset within the same application?

Thanks in advance.
 
Possible final update

a) The 3197 error (and it appears the bookmark errors) I eliminated by recoding to prevent 2 forms being open at the same time - even though one was set up to read the data as snapshot etc, it appeared that this had no effect as the datasource was a query.

b) Before I could solve the above, we had to make the sub form container remain 'enabled' as otherwise any attempt to save more sub form records that could appear in the sub-form without scrolling, produced an 'object not found' error in one of my functions where a bound field was being passed.

My testing after the above changes worked fine, and the amended database is now back with the user, I am awaiting feedback, so far it has been with them for 4 days, but they need to be prompted for information so until I do that (this evening) I cannot confirm all is now well.

Suffice it to say, I and MS are now convinced that the 3197 error was genuine, and it was confused by a bound sub form issue.

John
 
I am experiencing a VERY similar issue with the error 3197. It started when converted from 97 to 2000. It happens very predictibly for me. Its on an Invoice form with a payment subform. On the Invoice form a "Find" button opens a dialog popup type form to select the invoice and display it. It happens not on the first invoice payment, but only on the second round of Find/display/enter payment. The payment on the 2nd invoice is entered and as soon as I move either to the main invoice form or to a new record on the payment subform the error occurs. Another thing - it only occurs if there are no existing payment records for the invoice. I can get this to happen every time I do it. I have the latest service pack and I've done the stuff on the MS Knowlege base website suggested to fix corruption & no better. I am working with a front end/backend situation and I converted the backend back down to 97 and left the frontend in 2000 (just to see what happens) and the error goes away. Now if the data was corrupt (which I'm not convinced), does it un-corrupt it when converted back down? For now, we have taken our customer back down to 97 until we can resolve this issue - and from what I've been reading here, is not very promising.
The frontend is 75MB and the backend is 110MB

Linda in MN
 
Hi Linda,

IF your problem is the same as mine (and it sounds rather likely) then it isn't a data corruption, it is something to do with the way Access 2000 works, a timing issue of some sort between the sub form and main form - my error became very predictable and the man from MS decide it was the along those lines. I haven't got the emails that passed between us to hand, but I will look and see if I can find them over the weekend. You may like to try moving further up the Access 'range' to 2003 and see what happens. My customer appears able to live with the new situation, particularly as the number of concurrent users has fallen, and this seems to have an impact; the error occurs less frequently - although maybe my changes to code and the form helped. I'm afraid I don't know. My customer was understanding when I explained that it was an Access issue. (Although having the Microsoft emails may have helped!) Had I the luxury of being able to move the backend database engine to MSDE I would have done so, to see what happened, but I have to earn a living and my customer was (and is) happy with the database as it is, warts and all.


Good Luck

John
 
Linda - have you investigated volumes? Are you working over a network? It might be worth taking a few steps to ensure you are working in a 'streamlined' environment - i.e. low volumes on dedicated stand-alone PC. If it works in that environment then you may be on the same trail I was. If not perhaps there is a different explanation.

Our final solution was to run the purge I referred to earlier in the thread - by reducing the volumes by about 50% or so, it seems OK.
 
Me again Linda,

Re Glasgow's reply, my problems occurred even in a low volume environment, so Glasgow and I appear to have/had different problems.

By low volume I mean, in my case, with only me on the PC, and in the case of MS, with only the MS contact on the machine, - IIRC the MS copy of my database was stripped of all but the bare necessities for the form to run, and it still produced the error.

regards

John
 
I receive the error even when I have the front and back end on my local drive. I changed some code to do an db.execute instead of an .Update and then error changed to the Bookmark error instead of the 3197. I did purge out a bunch of data from a copy of the user's backend database here on my local drive to reduce to only the current year info(reduced to less than 7,000 recs) and it seemed to eliminate the error. However, sadly this is not an option. They need to have much more that one year available at all times, due to the nature of the business. I am at my wits end at what to do to fix this.

Linda in MN
 
Do you HAVE to stay with Access 2000. Is revert to 97 or upgrade to MSDE/SQL an option?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top