Since I am a new programmer...the RPG cycle is foreign to me! Never even learned it and updating those programs are sometimes "interesting" for me! This is one programmer you will be sure to never see the cycle from! :)

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of vhamberg@xxxxxxxxxxx
Sent: Tuesday, September 02, 2008 9:21 AM
To: RPG programming on the AS400 / iSeries
Subject: Re: Chain vs SetLL/ReadE

Chandra

I happen to prefer this style for reading records in a loop, because you need to test only one function - %eof(fielname) - to me it is just simpler and cleaner.

Now if I am testing existence, I'll use SETLL with %equal(filename).

If I want only the one record, I'll use CHAIN with %found(filename) - yes, I could use the loop method, but I guess CHAIN says more to me what I'm doing - sort of self-documenting the process.

But for a loop, I like the suggested form. Or you could always go with a PRIMARY file and use the cycle!! Just kidding - maybe!

HTH
Vern

-------------- Original message --------------
From: Chandra Krieg <chandrak@xxxxxxxxxxxxxx>

Hello all,

I have been told that the preferred method of random record retrieval
is to use the SetLL, then do a ReadE and check for the %EOF indicator.

Why is this preferred over using a Chain with %found or even checking
for %Equal on the SetLL before reading the file? I have been told that
the Chain doesn't do what I'm expecting it to but I've never had issues in the past.

I have read the archive posts and found opinions on the subject but no
concrete explenation as to why. As with some of the posts I don't
understand why you would want to readE the file if the SetLL didn't
find an %equal match or why if you plan to read the file a chain isn't appropriate.

I'm being told to use the following code instead of a Chain.

SetLL (KeyFields) FIleName;
ReadE (KeyFields FIleName;
DoW Not %EOF(FIleName);
do my stuff
ReadE (KeyFields) FileName;
EndDo;

Any explanations would be helpful!

TIA!

Chandra Krieg
i5 Programmer/Analyst
RateWatch
(P) 1.800.348.1831 ext 311
(F) 1.920.568.1403
www.rate-watch.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.