Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB3, VB4, VB5, VB6
Expertise: Beginner
Nov 25, 2003



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Manage Errors with Sparse Line Numbering

You might have used line numbering to track error locations, but this technique can be a pain (and ugly) to use for every line. Sparse line numbers help you locate code sections generating errors through the intrinsic Erl (error line) property.

Erl captures the most recent line number so you can pinpoint error locations with whichever precision you desire. This can help you determine what to do in the error handler—for example, do you need to roll back the database transaction?

Public Sub TestErl()
	Dim x
	On Error GoTo EH
		x = 1	 'This is line 0 (no line number set)
		x = x / 0 'cause an error
10	x = x / 0 'This is line 10
		x = 2
		x = x / 0 'This is also "line 10"
20	x = 4
'entering a new section of the procedure, set a new 
'line number
		x = 5
		x = x / 0 'this is still "20"
		Exit Sub
	Debug.Print Err.Description & " on line " & Erl
'picks up the most recently used line number
'log or email error info if desired--makes debugging 
'far easier.
	App.LogEvent "Error " & Err.Number & _
		" in TestErl: " & Err.Description & _
		" on line " & Erl, vbLogEventTypeWarning
	Resume Next
End Sub
Bob Hiltner
Thanks for your registration, follow us on our social networks to keep up-to-date