Error handling

Im writing a procedure to handle some errors, my project has more than 70 forms, and I have to copy that procedure to On Err event of all those 70 form.
Is there any way that automate this process to avoid adding this procedure to 70 from?
LVL 6
YadtrtAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
Lot's of utilities out there that will do this.  One is MZ Tools and it's free:
www.mztools.com
JimD.
0
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
This is a better link:
http://www.mztools.com/v3/mztools3.aspx
Takes you right to the download.
JimD.
0
YadtrtAuthor Commented:
I have MZ tool, but I dont how to use it for my situation
0
Determine the Perfect Price for Your IT Services

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

DBDevlCommented:
You can put something like this in a module:

Public Sub MyErrorHandler(Err As String)
  MsgBox Err, vbCritical, "Error"
End Sub

Then call it from your error handling:

Private Sub Form_Load()
On Error GoTo HandleErr

ExitHere:
  Exit Sub
 
HandleErr:
  Call MyErrorHandler("Error# " & Err.Number & ": " & Err.Description)
  Resume ExitHere
End Sub
0
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
<<I have MZ tool, but I dont how to use it for my situation>>
  I could have sworn that MZ Tools had the capability to insert it into all modules, but it looks like it only works on a per procedure basis.
 I may have been getting it confused with the VBA Error handler add-in which came with the Access 2000 Office Developer Edition, which does.  But I can't find a download for that.
JimD.
0
YadtrtAuthor Commented:
DBDevl:
I m calling the procedure, but I should call that procedure in 70 forms. I need something speed up this process instead of opening 70 froms and calling that procedure.
0
DBDevlCommented:
Yep I understand what you are saying now.  Check out this link:

http://www.experts-exchange.com/Microsoft/Development/MS_Access/Access_Coding-Macros/Q_22438027.html
0
Jim Dettman (Microsoft MVP/ EE MVE)President / OwnerCommented:
Sorry, but I cannot find any tool that will do an insert against an entire project or module except for the one included in the A2000 ODE.
JimD.
0
YadtrtAuthor Commented:
I couldnt find what I want in that link, I dont need error handling I need to call a procedure in the On Error Event of all 70 forms
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database Architect / Systems AnalystCommented:
Yes ... MZTools will only add an error template (that you have created) per procedure.

Of course, I'm sure you could write code to programatically insert code in every procedure ... but probably not that much fun, and would still require  separate tweaking.  Here is one example of an MZTool error template I created:

    On Error GoTo {PROCEDURE_NAME}_Error

      

 



{PROCEDURE_NAME}_Exit:
       On Error Resume Next
     Err.Clear
    'Cleanup here ....
     docmd.Hourglass False
     docmd.SetWarnings True
     On Error GoTo 0
     Exit {PROCEDURE_TYPE}

{PROCEDURE_NAME}_Error:
     Call SEH_ErrProcess("Error", "Application execution error.", _
                                  "An unexpected error has occurred.", _
                                  "{MODULE_NAME}", "{PROCEDURE_NAME}", _
                                  Err.Source, Err.Number, Err.Description, Err.LastDllError, _
                                  "If the problem persists, please contact the application developer.")  
    Goto {PROCEDURE_NAME}_Exit

***

mx
0
Leigh PurvisDatabase DeveloperCommented:
If you're wanting error handling across the board then you may have to fork out for it depending upon your needs.
Wayne Phillips has done some great, indepth work with the Global Error Handler here.
It far extends the ability of normal error handling, for example Iterating the Call Stack and more.
Cheers.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Access

From novice to tech pro — start learning today.