Domino Code Fragment

Code Name*
Using the LotusScript Data Object (LS:DO) Error Methods
Date*
04/28/2024
Source (or email address if you prefer)*
Rlatulippe@romac.com
IP address:.3.139.62.103
Description*
The following information explains how to use the LotusScript Data Object (LS:DO) error
methods.
Type*
LotusScript
Categories*
(Misc)
Implementation:
Required Client:
Server:
Limitations:
Comments:
In Notes 4.5, the default On Error action is Resume Next. If you don't explicitly check for errors and an error occurs, the script continues with undefined results.
Files/Graphics attachments (if applicable): Code:
Handling an ODBC error

ODBCConnection, ODBCQuery, and ODBCResultSet all contain the following methods:

- GetError returns the integer error number for the last operation performed by an object of
  that class.
- GetErrorMessage returns the error text for the last operation performed by an object of

  that class.
- GetExtendedErrorMessage returns extended error text for the last operation performed by an
 object of that class. If the error is originally reported by the data source, the extended

  error text contains the data source error message.

These methods are documented under ODBCQuery since they are the same for all three classes.
The GetErrorMessage topic documents the error codes and associated error text for each

error and provides examples. The documentation for each property and method provides error
codes and text for the error paths it contains.

If an operation is successful, the return number is DBstsSUCCESS. Any other number indicates
an error.

You can test operations on an individual basis by calling the above methods after each
operation. The following code shows the technique for checking the last operation and
exiting if an error
occurred:

con.ConnectTo("ATDB")
If con.GetError <> DBstsSUCCESS Then
Messagebox con.GetExtendedErrorMessage,, _
con.GetError & " " & con.GetErrorMessage
Exit Sub
End If
qry.SQL = "SELECT * FROM STUDENTS"
If qry.GetError <> DBstsSUCCESS Then
Messagebox qry.GetExtendedErrorMessage,, _
qry.GetError & " " & qry.GetErrorMessage
Exit Sub
End If
result.Execute
If result.GetError <> DBstsSUCCESS Then
Messagebox result.GetExtendedErrorMessage,, _
result.GetError & " " & result.GetErrorMessage
Exit Sub
End If


You can test operations in general with an On Error statement. If the On Error action with
no error number is in effect, any operation that returns an error number other DBstsSUCCESS
invokes the On Error action. Your error code should test GetError for all objects that may
cause the error. The following code shows the technique for trapping any ODBC error and
exiting:

On Error Goto errorHandler
con.ConnectTo("ATDB")
qry.SQL = "SELECT * FROM STUDENTS"
result.Execute
...
errorHandler:
If con.GetError <> DBstsSUCCESS Then
Messagebox con.GetExtendedErrorMessage,, _
con.GetError & " " & con.GetErrorMessage
End If
If qry.GetError <> DBstsSUCCESS Then
Messagebox qry.GetExtendedErrorMessage,, _
qry.GetError & " " & qry.GetErrorMessage
End If
If result.GetError <> DBstsSUCCESS Then
Messagebox result.GetExtendedErrorMessage,, _
result.GetError & " " & result.GetErrorMessage
End If
Exit Sub