我找不到有关如何重新抛出刚刚捕获的相同异常的任何信息。

我的catch表达式如下所示:

CATCH ex1 AS Progress.Lang.Error :
        MESSAGE ex1:NumMessages.
        DEFINE VARIABLE iteration AS INTEGER NO-UNDO.
        DO iteration = 1 TO 6:
             clsLog:inf(ex1:GetMessage(iteration)).
        END.

         clsLog:inf(SUBSTITUTE("ex1:CallStack: &1", ex1:CallStack)).
    END CATCH.


如何在不丢失其携带的任何消息或数据的情况下抛出该特定异常?或者,如果您在Internet上能找到有关重新抛出正在进行的异常的任何信息,我将不胜感激。

最佳答案

您重新抛出就像抛出:

UNDO, THROW ex1 .

关于openedge - 如何重新捕获4gl中捕获的异常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59155847/

10-10 22:31