Kbase P153674: PROCESS EVENTS error 2780 is not caught by catch block
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/1/2009 |
|
Status: Unverified
SYMPTOM(s):
PROCESS EVENTS error 2780 is not caught by catch block
Input blocking statement is invalid while executing a user-defined function or method: '<function>'. (2780)
The following code returns error 2780:
---start---
FUNCTION processEvents RETURNS LOGICAL ():
PROCESS EVENTS.
RETURN TRUE.
CATCH e AS Progress.Lang.Error :
MESSAGE "Error caught in function" VIEW-AS ALERT-BOX.
END CATCH.
END.
processEvents().
---end---
FACT(s) (Environment):
All Supported Operating Systems
OpenEdge 10.2A
CAUSE:
The error condition is not in force when an i/o blocking statement is encountered during the execution of a user-defined function.
FIX:
As a workaround, take the CATCH outside the functuion:
---start---
FUNCTION processEvents RETURNS LOGICAL ():
PROCESS EVENTS.
RETURN TRUE.
CATCH e AS Progress.Lang.Error :
MESSAGE "Error caught in function" VIEW-AS ALERT-BOX.
END CATCH.
END.
processEvents().
CATCH e AS Progress.Lang.Error :
MESSAGE "Error caught in main block" VIEW-AS ALERT-BOX.
END CATCH.
---end---