Consultor Eletrônico



Kbase P146032: Structured Error Handling causes ERROR condition to be raised where previously it did not.
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   5/13/2009
Status: Unverified

SYMPTOM(s):

Structured Error Handling causes ERROR condition to be raised where previously it did not.

Adding a CATCH block or ROUTINE-LEVEL ON ERROR UNDO, THROW statement to existing code

Errors that previously did not stop program now do so

Methods and functions that previously did not set ERROR-STATUS:ERROR condition (ie. SERVER:CONNECT() ) now do so

FACT(s) (Environment):

Depending on how existing code handles error conditions, it may now abort unexpectedly.
OpenEdge 10.1C
OpenEdge 10.2x
All Supported Operating Systems

CAUSE:

This is expected behavior.

As documented in the OpenEdge Development: Error Handling manual, the traditional error handling and the Structured Error Handling follow different models with different rules.
To make the Structured Error Handling work as intended, existing error handling behavior must be changed when it is implemented.

FIX:

When implementing the Structured Error Handling in existing code, review the known error conditions and existing error handling code.
Then adjust the existing code as needed to ensure the functional results remain the same after the introduction of the Structured Error Handling.