|
Sorry John;
(Trying to trim down the messages and trimmed to much.)
The code was your validateInput procedure example.
validateInput b
pi n
if field1 = 'bad';
msgData = "Field 1 must not be bad";
exsr sndDiagMsg;
endif;
if field2 = 'bad';
msgData = "Field 2 must not be bad";
exsr sndDiagMsg;
endif;
(continue for each additional field)
return (%len(msgData) = 0);
begSr sndDiagMsg;
QMHSNDPM( 'CPF9897'
:'QCPFMSG QSYS'
:msgData
:%len(msgData)
:'*DIAG'
:'*'
:1
:msgKey
:dsERR );
endSr;
validateInput e
-----Original Message-----
From: John Taylor [mailto:lists@xxxxxxxxxxxxxxxxxxxx]
Sent: Thursday, July 28, 2005 10:35 AM
To: 'RPG programming on the AS400 / iSeries'
Subject: RE: dRE: No Subroutines (was Re: Debugging many subprocedures)
Duane,
Your post would be more useful if you included the original example, and
your ideas for improvement. As it is, I have no idea what specific code
you're referring to. Is it the procedure that validates data, or the
subroutine within a procedure that validates the input parms?
John Taylor
> -----Original Message-----
> From: rpg400-l-bounces@xxxxxxxxxxxx
> [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Christen, Duane J.
> Sent: Thursday, July 28, 2005 8:17 AM
> To: 'RPG programming on the AS400 / iSeries'
> Subject: RE: dRE: No Subroutines (was Re: Debugging many
> subprocedures)
>
> Scott;
>
>
> John's code snippet is a perfect example of a procedure
> imitating a subroutine. I personally would never do a
> validation subroutine as a procedure, there is no advantage.
> Nothing is declared locally to the procedure, all variables
> are global to the module.
>
> If I have three procedures in a module and they each have to
> validate parms, then all of the parms to those procedures
> have to be global, or I can pass the parms to the validate
> procedures, or I can use 3 subroutines within the scope of
> the respective procedures to validate its parms locally. So a
> subroutine becomes sub-sub procedure local to it's parent sub
> procedure.
>
> Duane Christen
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.