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



Cor blimey

-----Message d'origine-----
De : rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] De la part de Takken, Cor
Envoyé : mardi 25 novembre 2008 12:08
À : rpg400-l@xxxxxxxxxxxx
Objet : RE: Exiting a sub procedure

It indeed depends on the requirements, you are right to point out the subtle (but for that no less important) difference.

I could be standing corrected.

Cor

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
bounces@xxxxxxxxxxxx] On Behalf Of nicolas
Sent: dinsdag 25 november 2008 11:56
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Exiting a sub procedure

Hi,

it's not the same thing !

when you code
IF Control ()
AND Extract ()
AND Calculate ()
AND Output ()
RtnVar = *ON
ENDIF

Extract() won't occur if Control() returns *off, that's why I wrote
about obfuscation

nicolas

Takken, Cor a écrit :
Much better I think, or if you feel brave:

RtnVar = Control () AND Extract () AND Calculate () AND Output
()

Allthough I would be one of the first to admit that this alternative
suffers from clearity and therefore maintainability.

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
bounces@xxxxxxxxxxxx] On Behalf Of David FOXWELL
Sent: dinsdag 25 november 2008 10:28
To: RPG programming on the AS400 / iSeries
Subject: RE: Exiting a sub procedure

I like that, thanks.
How about this, based on your example?

This is just a very basic procedure that performs several tasks
that must all be completed correctly in order to return the
condition
*ON.

Anyone got any more?

RtnVar = *OFF

IF Control ()
AND Extract ()
AND Calculate ()
AND Output ()
RtnVar = *ON
ENDIF

EXSR ERROR

RETURN RtnVar

BEGSR ERROR
...do stuff here...
IF RtnVar
Code for OK
ELSE
Code for error

ENDSR


-----Message d'origine-----
De : rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-
bounces@xxxxxxxxxxxx] De la part de Rory Hewitt Envoyé : lundi 24
novembre 2008 18:06 À : RPG programming on the AS400 / iSeries
Objet : Re: Exiting a sub procedure

David,

An even sompler coding change would be to change to the following:

IF NOT Control ()
EXSR ERROR
ENDIF

IF NOT Extract ()
EXSR ERROR
ENDIF

IF NOT Calculate ()
EXSR ERROR
ENDIF

IF NOT Output ()
EXSR ERROR
ENDIF

RETURN *ON

BEGSR ERROR
...do stuff here...
RETURN *OFF
ENDSR

On Mon, Nov 24, 2008 at 2:15 AM, David FOXWELL
<David.FOXWELL@xxxxxxxxx>wrote:

Hi,
Do you mean replacing something like this ( which is what I see
often
) :......

IF NOT Control ()
RETURN *OFF
ENDIF

IF NOT Extract ()
RETURN *OFF
ENDIF

IF NOT Calculate ()
RETURN *OFF
ENDIF

IF NOT Output ()
RETURN *OFF
ENDIF

RETURN *ON


....by something like this?

RtnVar = *ON
IF NOT Control ()
RtnVar = *OFF

ELSEIF NOT Extract ()
RtnVar = *OFF

ELSEIF NOT Calculate ()
RtnVar = *OFF

ELSEIF NOT Output ()
RtnVar = *OFF

ENDIF

RETURN RtnVar
--
This is the RPG programming on the AS400 / iSeries (RPG400-L)
mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
http://archive.midrange.com/rpg400-l.

--
This is the RPG programming on the AS400 / iSeries (RPG400-L)
mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
http://archive.midrange.com/rpg400-l.



This e-mail and any attachment is for authorised use by the intended
recipient(s) only. It may contain proprietary material, confidential
information and/or be subject to legal privilege. It should not be
copied, disclosed to, retained or used by, any other party. If you are
not an intended recipient then please promptly delete this e-mail and
any attachment and all copies and inform the sender. Thank you.



--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/rpg400-l.



This e-mail and any attachment is for authorised use by the intended recipient(s) only. It may contain proprietary material, confidential information and/or be subject to legal privilege. It should not be copied, disclosed to, retained or used by, any other party. If you are not an intended recipient then please promptly delete this e-mail and any attachment and all copies and inform the sender. Thank you.


--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.