With all this error talk.. - Forum - OpenEdge Development - Progress Community
 Forum

With all this error talk..

  • If you put the return cValue in the finally block after the catch, wouldn't you get what you want or were you trying to avoid the finally block? I think there was some issue though where the finally block was not handling returns like this so maybe this only works with 11.x and up.

      DEFINE VARIABLE cValue AS CHARACTER NO-UNDO init 'no-error'.
    
    
      FIND customer NO-LOCK
    
        WHERE customer.Name = "bumface".
    
    
    
      CATCH e AS PROGRESS.Lang.SysError:
    
        cValue = e:getMessage(1).
    
      END CATCH.
    
     finally:
         return cValue.
     end.

  • I'm thinking of this:

    knowledgebase.progress.com/.../P164717

    Different type of issue but good to note.

  • Also note that the behaviour of flow-of-control statements in a FINALLY block changed in 11.4, to be more logical. More info at documentation.progress.com/.../OpenEdge.40.html