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



Do away with the use of readc.  The experts say its deprecated now.  

Use a for loop.  Chain to each row and process every row.  I like a loop
something like this:

  C                 for    wSeq = wSeq 1 to SFLRECS
  C   wSeq    chain   SFL
  C   .... your stuff ....
  C                 endfor
 
where SFLRECS is the number of records in the subfile, which you have
available anyway as a the field for SFLSIZE(&SFLRECS).

This is fast, easy, and easiest to maintain later on.  READC needs attention
paid to SFLNXTCHG and other trivial but irritating points, as you are
discovering.  :)


---------------------------------
Booth Martin
http://www.martinvt.com
---------------------------------
-------Original Message-------
 
From: RPG programming on the AS400 / iSeries
Date: 08/12/05 16:01:33
To: RPG programming on the AS400 / iSeries
Subject: RE: Force EOF in a Subfile
 
But when I chain back to the subfile, it positions the (pointer?
Cursor?) for the next read.  So when I chain to the 1st record in the
subfile, the next ReadC to the subfile will read the 2nd record, not the
first.
 
 
Kurt Anderson
Application Developer
Highsmith Inc
 
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Carel Teijgeler
Sent: Friday, August 12, 2005 2:47 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Force EOF in a Subfile
 
Kurt,
 
I do not understand your question.
 
Reading through a SFL and turning on SFLNXTCHG will make the changed
records availble for the next READC. And this READC will start from the
top of the SFL after each EXFMT. Reords not read the first time are
still marked as changed.
 
Regards,
Carel Teijgeler
 
*********** REPLY SEPARATOR  ***********
 
On 12-8-05 at 14:32 Kurt Anderson wrote:
 
>How do I do force an EOF in a subfile w/o altering the state of any
records in the subfile?
>(Sorry, my searches in the archives didn't turn anything up.)
>
>Essentially, I'm validating a subfile by reading through as ReadC.
>DoU %EOF;
>  ReadC Subfile;
>  If not %EOF;
>     If errAction();
>       dspatr = @RU;   // reverse image, underline
>       PosCsr = *On;
>     EndIf;
>     SflNxtChg = *On
>     Update Subfile;
>  EndIf;
>EndDo;
>
>Ok, but based on that processing, I want the top record displayed to
>have a field Positioned-To (assuming there were no errors found).
>I'm omitting a lot of code here obviously, but there is code that
>determines if the 1st record needs to be updated again.  If it needs to
 
>be, I do a:
>
>Chain 1 Subfile;
>If %found;
>  PosCsr = *On;
>  Update Subfile;
>EndIf;
>
>Now, in order to process this subfile if no errors were found, I need
>to loop with a ReadC again.  Except, by doing the chain, I lost my EOF
>on the subfile.
>I could do a:
>Chain LastRec Subfile;
>ReadC Subfile;
>
>But that loses the SflNxtChg that is on the last record (if the last
>record was changed).  Short of adding a hidden field in the subfile
>that lets me know if it was changed or not, is there any way to force
>an EOF on a subfile so my next ReadC loop will start at the beginning
>of the subfile?
>
>Kurt Anderson
>Application Developer
>Highsmith Inc.
>W5527 State Road 106, P.O. Box 800
>Fort Atkinson, WI 53538-0800
>TEL (920) 563-9571  FAX (920) 563-7395
>EMAIL kjanderson@xxxxxxxxxxxxx
>
>--
>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 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.