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



Patric,

Use PLIST to allow multiple keys to be used on file IO

Set up a PLIST with all the keys you need to position the file

Use a different PLIST with only the keys required for the READE or READPE

You can set the individual key fields used in the PLIST to *HIVAL or
*LOVAL or specific values as required.

Cheers

Don





From: "Patrik Schindler" <poc@xxxxxxxxxx>
To: "RPG programming on IBM i" <rpg400-l@xxxxxxxxxxxxxxxxxx>
Date: 05/03/2020 02:45 AM
Subject: Re: READE EOF Handling/Repositioning
Sent by: "RPG400-L" <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx>



Hello Nick,

Am 04.03.2020 um 17:09 schrieb Nick <nicola.brion@xxxxxxxxxxxx>:

Wait. If you need to read from a *Specific* point inside the key, you
have to use 2 keys, one for setgt and one for the readp (or a single key
specifiying number of filed to use). If you just need to read all record
that have that key, just use a single one.

A 'classic' example with orders row:

Setgt (OrdNum) OrdRow
Readpe (OrdNum) OrdRow

will read all order's row for the given order, while:

Setgt (OrdNum:100) OrdRow
Readpe (OrdNum) OrdRow

will read from highest row less or equal 100, and then down to lower
one.

I don't think that works with V4R5 RPG, since there's no "free" and I
can't remember to have additional arguments for SETGT allowed. Yes, really
classic. :-)

Aside, the goal is after READE sets EOF, I want to to a SETGT on the last
record, so I can properly READPE backwards. READ(P)E should be done with
just one key field to only pick out the needed records, and set BOF/EOF
when this subset of records is exhausted. But for repositioning at EOF, I
need *HIVAL for a second order key. SETLL with just the first order key
already places me at BOF (for the given record set).

Niels brought me on the right track. :-)

:wq! PoC

PGP-Key: DDD3 4ABF 6413 38DE - https://www.pocnet.net/poc-key.asc



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
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.