× 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.



Still, I like the concept. It'd be a way to get out of a block of code without a GOTO. The Do .. EndDo marks the block of code. Are there other ways to jump out of a block in CL structured op codes?

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-
bounces@xxxxxxxxxxxx] On Behalf Of CRPence
Sent: Tuesday, July 23, 2013 4:13 PM
To: midrange-l@xxxxxxxxxxxx
Subject: Re: Leave outside of DO group???

On 23 Jul 2013 13:48, DrFranken wrote:
I wrote this snippet of code:

Do
ChkObj QSTRUPEX1 *Pgm /* Check for exit program. */
MonMsg CPF9800 EXEC(Leave) /* Not there or Not Authorized */
Call QSTRUPEX1 /* Run it. */
MonMsg CPF0000
EndDo


At the LEAVE Statement I get this error:
* CPD0883 30 LEAVE command found outside of DO group.

But it sure appears to be inside a Do group to me!

Am I in error if I 'complain' to the fine folks in the land of IBM
i?


AFaIK the error is correct, and ...

The implied command label [CMDLBL(*CURRENT)] is, as worded in the
message CPD089A, is not "associated with an active DOWHILE, DOUNTIL, or
DOFOR group". The additional\second-level text of that CPD0883 [e.g. as
presented by F1=Help] should further state that "The LEAVE command must
be inside a DOWHILE, DOUNTIL, or DOFOR command group."

FWiW: Coding the MONMSG CPF0000 as shown is not a good practice; just
as well remove the prior CHKOBJ and MONMSG to get effectively the same
results with less work.

--
Regards, Chuck
--


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

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.