ERROR and STOP Classes
- Last Updated: March 30, 2020
- 1 minute read
- OpenEdge
- Version 12.2
- Documentation
There is a set of built-in objects in ABL that represent system-generated
ERROR conditions:Progress.Lang.ProErrorProgress.Lang.SysErrorProgress.Lang.SoapFaultError
There is also a set of built-in objects that represent system-generated
STOP conditions:Progress.Lang.StopErrorProgress.Lang.StopProgress.Lang.StopAfterProgress.Lang.LockConflictProgress.Lang.UserInterrupt
There is also a built-in object which can be used to represent an
application-generated error condition. In addition, you can create your own application
error objects that inherit from this class:
Progress.Lang.AppObject
Lastly, there is an interface that contains the common properties of all
error objects as well as the
StopError object:Progress.Lang.Error
The following diagram shows the relationship between these objects.

Since Progress.Lang.ProError implements
the Progress.Lang.Error interface, all of its
subclasses do as well. Note that a .NET Exception also behaves as if it implements the
Progress.Lang.Error interface even though it is not
an ABL object. Other than Progress.Lang.StopError, the
other stop objects do not implement this interface.