A .NET Exception is a class instance that is thrown by a .NET method that inherits from .NET’s System.Exception. If you are interacting with .NET objects through your ABL code, it is possible that one of these error objects can be thrown. In ABL you interact with these .NET objects in the same way as with ABL error and stop objects. They can be caught or rethrown.

The .NET native methods and properties of the Exception object can be accessed. However, ABL also makes .NET exceptions appear as if they implement the Progress.Lang.Error interface. So you can pass a .NET exception to an error handling routine that accepts a Progress.Lang.Error interface as a parameter. Then you can use the methods and properties of that interface to access the data in the .NET class.