Bug #2791
Out of Stack space (access 2000)
0%
Description
Hello. I have encountered another error with the new version of the vegetation database. [v 2.0.4]
When I begin to enter anything in the species name box I get an error message...
Run-time error ‘28’
Out of Stack space.
really reported by David Ingersoll who also has compile errors initially, which could be causing the secondary problem. ??
History
#1 Updated by Michael Lee about 15 years ago
Confirmed: this is a problem in Access 2000 when you try to add a new record to Cover Data (not Planted or Natural Stems, however). This wasn't a problem in version 2.0.3, so what changed between them.
In addition, there are several other compile errors in 2000:
application.brokenReferences
and Report.openArgs, including docmd.openReport ,,,,,(openingArgs)
so probably best is to close off these parts of the system from Access 2000 and we state that we support Access 2000 in a limited manner. The reports are more for DBA anyway. The brokenReferences thing should be handled in that the references are decoupled when access closes.
#2 Updated by Michael Lee about 15 years ago
That's Application.BrokenReference that isn't available in Access2000
#3 Updated by Michael Lee about 15 years ago
It appears that the form_BeforeInsert triggers the Form_Dirty event, which triggers the form_BeforeInsert event, and so on. Obviously, this is a problem, but it doesn't seem to happen with stems... which is interesting. Also, doesn't happen when getCurrentUser() is not referenced in the dirty event.
#4 Updated by Michael Lee about 15 years ago
A bit of a hack is to check to see if the last dirty event was less than 2 seconds ago, if so, just skip the dirty event:
'ignore difference of less than 2 seconds between this dirty
'and previous dirty event:
Static dte_entry_cover_lastDirty As Date
If DateDiff("s", dte_entry_cover_lastDirty, Now()) < 2 Then
'skip this
Debug.Print "skipping dirty, as it was just dirty a second ago"
Exit Sub
End If
#5 Updated by Michael Lee about 15 years ago
Make that:
'ignore difference of less than 2 seconds between this dirty
'and previous dirty event:
Static dte_entry_cover_lastDirty As Date
If DateDiff("s", dte_entry_cover_lastDirty, Now()) < 2 Then
'skip this
Debug.Print "skipping dirty, as it was just dirty a second ago"
Exit Sub
End If
dte_entry_cover_lastDirty = now() 'remember this dirty event for next time
#6 Updated by Michael Lee about 15 years ago
Solution to brokenReferences thing:
Public Function checkForAppBrokenRef() As Boolean
On Error GoTo errThis
Dim blnRet As Boolean
blnRet = Eval("application.brokenReference")
exitthis:
checkForAppBrokenRef = blnRet
Exit Function
errThis:
'not available, I guess, assume something could be broken, and look one-by-one
Debug.Print "checkForAppBrokenRef>> Can't work with application.brokenReference"
blnRet = True
Resume exitthis
End Function
#7 Updated by Michael Lee about 15 years ago
fixed in version 210p6
Out of stack space is fixed (can add records to entry_cover fine)
Can open db fine, as well in access2000.
#8 Updated by Redmine Admin over 9 years ago
Original Bugzilla ID was 2791