When an error occurs on a statement that uses the NO-ERROR option, the AVM takes the following actions:

  • Any error messages generated by the statement are not displayed to the default output. Instead they are redirected to a system handle called ERROR-STATUS.

    The handle preserves all system error messages raised by the statement, setting the NUM-MESSAGES attribute accordingly. The handle preserves this information only until the AVM executes another statement with the NO-ERROR option, whether or not an error occurred on the subsequent statement. This is illustrated further in the next section, Precedence of NO-ERROR.

  • If any undo-able action has already occurred as part of the statement, that action is undone. This is discussed in more detail in the section, UNDO and scope using NO-ERROR.
  • Execution continues with the next statement.
Note: The NO-ERROR option has no effect on STOP condition handling.

Refer to the ABL Reference to see specific statements that support the NO-ERROR option.