How can I throw the error when STOP condition is raised ( Progress openEdge )

Viewed 42

Something like:

DO ON STOP UNDO, THROW:

code FINALLY: code END FINALLY.

END.

1 Answers

In OpenEdge 12 you can CATCH Stop conditions. Depending on the cause, you can CATCH:

  • Progress.Lang.StopError (e.g. execute non existing procedure)
  • Progress.Lang.LockConflict
  • Progress.Lang.StopAfter (Block with STOP-AFTER option)
  • Progress.Lang.UserInterrupt
  • Progress.Lang.Stop (generic STOP condition)

Progress.Lang.StopError extends Progress.Lang.SysError and can be CATCHed with Progress.Lang.Error too

The other STOP conditions all extend Progress.Lang.Stop and could be CATCHed with that type.

Related