ABL returns server-side errors that occur during execution of a remote procedure. There are three types of remote procedure conditions an application server can return to the client:

  • ERROR condition — A server-side ERROR condition is sent to the client only when a remote procedure or function executes a RETURN ERROR statement. All other server-side ERROR conditions (such as failure to connect to a database) are not raised beyond the scope of the ABL procedure where they occur; therefore, such ERROR conditions do not propagate to the client. Instead, the application server writes error messages for these conditions to the server log file.
  • STOP condition — Any unhandled STOP condition raised on the application server is sent to the client. This type of server-side error can occur, for example, when the called remote procedure calls another procedure that cannot be found.
  • QUIT condition — Any unhandled QUIT condition raised on the application server is sent to the client. The server-side ABL application can use a QUIT statement to raise a QUIT condition because the client exceeded a resource, did something it should not do, or for any other reason it chooses.