Access Error 3197 The Microsoft Jet Engine cancelled the process ...

S

Sally Green

I have an Access 2000 format mdb running in Access 2003.
Database is split into front end and back end, running on
a network. Intermittent error 3197 occurs within a
subform on Update.

I've disabled all code, error stills occurs. Error
occurs even if running on stand alone pc. I read
somewhere about formatting all dates in tbls to
yyyy/mm/dd and setting Allow Zero properties in tbls to
No. This seemed to clear up the problem but it has
started again, but NOT AS FREQUENTLY!

Error 3197 - The Microsoft Jet Engine cancelled the
process because you and another user are trying to change
the same record at the same time.

Has anyone got a solution for me. I'm at my wits end!

Thanks
Sally
 
M

Markus Larsson

I have the same problems with my databeses, but I use Access 2000.
Are there anyone who know what this problem is, because it has nothing to do with a memo-field.

Any help appriciated.
Markus
 
K

Ken Snell

Subforms that are dirty, and then code runs to try to edit the subforms'
recordsets, is one source of this error. Moving focus from a subform to the
main form while the subform is dirty will eventually save the subform's
data, but if code runs immediately before this happens (e.g., clicking a
command button in the main form is how the focus moves, and that button runs
code right away), this can cause a timing problem.

In short, you're getting this error because a record is dirty and you're
trying to change either that record or the recordset in which it's a part
while it's dirty.

Fixing the problem requires finding where you're doing this action, and then
figuring out how to undirty the record before you try to edit the data by
code or query.
 
J

jmrsudbury

I don't buy the dirty record reason. There must be another reason. I
my case, it was an intermittent problem that only occurred on one of m
client's sites. The forms that were having trouble were using loca
tables to which only one user had access. The error was coming up i
between my code running. It was not one of the commands I issued
rather, it was something internal to Access 2003. I never had an
trouble like this in Access 97 using the same code.

I spent a month recoding an entire Access 2003 system trying to get ri
of this 3197 error, but could not. I put a tonne of saves in such tha
whenever anything was changed or added, it would be saved before focu
left the form or subform. This was a nightmare to try to diagnose
since I could not get it to fail in the mdb in front of me. Nor did i
matter how many users were on the server at the time. Giving the user
new copy of the front end (in case their copy was corrupted) would onl
work for a short while (maybe 5-20 new records) before the erro
cropped up again. I ended up having to use the Form_Error event t
work around the problem. A me.requery fixed the symptoms and allowe
the user to continue without losing data. As soon as I starte
checking for 3197, several other errors started to crop up for n
apparent reason, so I ended up with the code showing below:

Private Sub Form_Error(DataErr As Integer, Response As Integer)
'The following errors are causing #Error to be put into the fields
'3197 The Microsoft Jet database engine stopped the process because yo
and another user are attempting to change the same data at the sam
time.
'3159 Not a valid bookmark.
'3001 Invalid argument.
If DataErr = 3197 Or DataErr = 3159 Or DataErr = 3001 Or DataErr
2237 Then
Me.Requery
Debug.Print "Had 3197 error in receipts " & Format(Now
"yyyy/mm/dd hh:nn")
Else
MsgBox "There has been an error: " & DataErr, 48, "Receipt
Error 111"
End If
Response = acDataErrContinue
End Su
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top