×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




And you should think NEXT RECORD.  Additional tests can be added to the
if statement with no other changes needed.

Marvin


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of
jstevens@xxxxxxxxxxxxxx
Sent: Friday, August 19, 2005 7:37 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: read on a do loop

That's right.  I think that the LEAVE makes more sense here.  When I see

ITER, I think "NEXT RECORD".


Jeff Stevens
Mize, Houser & Co. P.A.
913 451 1882
JStevens@xxxxxxxxxxxxxx





"Holden Tommy" <Tommy.Holden@xxxxxxxxxxxxxxxxx> 
Sent by: rpg400-l-bounces@xxxxxxxxxxxx
08/19/2005 09:33 AM
Please respond to
RPG programming on the AS400 / iSeries <rpg400-l@xxxxxxxxxxxx>


To
"RPG programming on the AS400 / iSeries" <rpg400-l@xxxxxxxxxxxx>
cc

Subject
RE: read on a do loop






Why iter??  A leave would be more clear in this case.... 

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Marvin Radding
Sent: Friday, August 19, 2005 9:30 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: read on a do loop

[Marvin Radding:] I have been using iter for a few years now.
[Marvin Radding:]
Here is my code:

/free

  Setll myfile;

  Dou %eof(myfile);
    Read myfile;
    If %eof(myfile);
      Iter;
    Endif;

// other processing

  Enddo;

/end-free

One thing I like about this paradigm, when I decide I want to skip this
record a simple 'iter' will get me the next record.  Simple and easy to
understand code.

Marvin


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]On Behalf Of rob@xxxxxxxxx
Sent: Friday, August 19, 2005 8:41 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: read on a do loop


Since I've developed a fondness for iter I'd like to do something like
...
setll(e) MyFile Mykey;
dou %status(reade(e) MyFile MyKey)<>0;
  // process
  ...
  iter;
  else;
  ...
EndDo;

I take it the way to do this is to make a one statement subprocedure
that does the reade and make the code look like

setll(e) MyFile Mykey;
dou ReadLoopProc<>0;
  // process
  ...
  iter;
  else;
  ...
EndDo;

P ReadLoopProc   b
D ReadLoopProc   PI   like(returnvar)
D  returnvar      s            5i 0
/free
 reade(e) MyFile MyKey;
 returnvar=%status(MyFile);
 return returnvar;
/end-free
P ReadLoopProc  E


Rob Berendt
--
Group Dekko Services, LLC
Dept 01.073
PO Box 2000
Dock 108
6928N 400E
Kendallville, IN 46755
http://www.dekko.com

--


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


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

This mailing list archive is Copyright 1997-2026 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.