Runtime error 6 overflow

tucker61

Registered User.
Local time
Today, 01:48
Joined
Jan 13, 2008
Messages
344
Seeing this issue arise after some recent changes have been made to my forms,

We have approx 200 users who use my database, but only 1 or 2 are seeing this error.

I have tried trapping the error but to no avail as of yet. Not all of my procedures contain error trapping code yet...

Has anyone got any advice ?

Sent from my SM-T715 using Tapatalk
 
Almost certainly caused by an integer number field which has reached the maximum value allowed - approx. 32550 from memory. You need to identify this and change it to from integer to long integer.

The reason why not everyone has seen the error yet is that they haven't done anything to add a new record to that table.

Ask those who've seen the error what they were doing when it happened.

Also, add error trapping to everything in your db...ASAP.
 
I've also seen this error returned if a divide by zero condition happens, so see if that's possible in your situation.
 
Division by zero is error 11...

attachment.php
 

Attachments

  • DivideZero.PNG
    DivideZero.PNG
    3.9 KB · Views: 781
Will carry on adding error trapping tomorrow, there are no calculations, especially multiplication or division. I have replicated everything the user did without any errors.

Sent from my SM-T715 using Tapatalk
 
I often find its the autonumber PK field in such cases.
The user doesn't have to do anything other than create a new record ...
 
Yes, I realize what the standard error is, I'm saying I've seen this one returned when the actual problem was divide by zero.
 
Seeing this issue arise after some recent changes have been made to my forms,

What were the changes? That should narrow down the search pretty quickly.
 
Quite a few changes to be honest, I have added more error trapping tonight, and changed one number field from double to long integer. Will monitor over next few days

Sent from my SM-T715 using Tapatalk
 
Going from DOUBLE to LONG actually SHRINKS the numeric range available to you. A LONG can only go up to about 4 Billion as a counting number or +/- 2 Billion as a signed LONG. DOUBLE can easily exceed 10^30 with no sweat.

What did that DOUBLE represent and why was it changed to LONG?
 
Main change was merging a quote and a charge form into one, but this should not produce the error the user is seeing.. the user is still getting the error today so I have changed my field back to double.. the field is the number of Units used when carrying out work, so could be anything from 0.5 to 25,000

I have not managed to sit with the user yet but the overflow error is triggered when the vba code to send a email via outlook is triggered.

Like I said earlier the confusing thing is that it works ok for up to 200 other users, so I can't see why this one user is having issues..

Next week I will sit at her pc and run through the code to see exactly where it is failing and then post the code here for advice.


Sent from my SM-T715 using Tapatalk
 
Just for info, my original post advice was to change an integer field that has reached the integer value limit to long integer.

I didn't suggest changing a double datatype
 
Just for info, my original post advice was to change an integer field that has reached the integer value limit to long integer.

I didn't suggest changing a double datatype
Thanks..

Sent from my SM-T715 using Tapatalk
 
Ok, managed to sit down with the user today and replicate the Fault, the piece of code causing the issue is the snooze reminders code.

The user had approx. 256 reminders that she had snoozed on her pc.

Is there a limit to the number of times access will go through the snooze procedure ? or do I need to just add some Error code to this procedure ? (since I cant rely on operators dismissing their reminders...)

Code:
Sub SnoozeReminders()
Dim olApp As Object
Dim objRems As Object
Dim objRem As Object
    Set olApp = CreateObject("Outlook.Application")
    Set objRems = olApp.Reminders
    For Each objRem In objRems
        If objRem.IsVisible = True Then
            objRem.Snooze
        End If
    Next objRem
End Sub
 
Suggest you dismiss the operator instead if she's snoozing all the time!!
 
In addition to the real answer provided by Ridders, I suspect there is a limit on the number open objects access can reference at once - and 256 would be sensible - after all who would need anything like 256 external objects open at the same time.... ;)
 
Since you can ADD snooze reminders, you can look at the list to see how many you have of that type and remove the oldest ones. Or if your site rules disallow that, count the pending reminders and when you get enough, use the "COOKIE MONSTER" approach. That is, use a Modal Dialog box that CAN'T be ignored to MAKE the user address the problem. I find that annoying someone (and escalating it if they don't take the bait) will eventually get someone to talk to you and explain the problem.

And if management says "Don't DO that" your response is "This person's action BREAKS something that can't be fixed 'cause we don't own the code and would break the implied warranty if we modified it. The ONLY solution is to have the person clear out reminders and that message tells us when it has become a matter of necessity."

I know this kind of thing works because something similar happened with me at work. Wasn't with reminders but it was something that needed to be addressed and some people got too lazy to clean up their messes.
 

Users who are viewing this thread

Back
Top Bottom