× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Charles,

Since I have no access to your Msg_throw() routine and have no idea what it
does, I substituted a divide by zero to cause the second error.  See the
code below.  It works as I would expect it to, and I see all three displays.

I ran it on V5R3 and V5R2 - both worked the same.  That leaves me to
conclude that either you are missing a PTF, or whatever you are doing in
your Msg_throw() routines is the cause.

     d x               s              5i 0 inz
     d lvl1err         s               n
     d lvl2err         s               n

      /free
        monitor;

          monitor;
            x = x / x;  // Blow up
          on-error;
            dsply ('On-error lvl2');
            lvl2err = *ON;
          endmon;
          if lvl2err;
            dsply ('Had Error at lvl2');
            x = x / x;  // Blow up again
          endif;

        on-error;  
          dsply ('On-error lvl1');

        endmon;
        dsply 'EndMon';
        *INLR = *ON;
        return;
      /end-free

Jon Paris
Partner400

www.Partner400.com 



As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.