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



You are correct, you cannot use FETCH to retrieve a specific record, try SELECT INTO. Otherwise, you have to read through your cursor and test the HID field after each fetch. You can fetch several records at a time into an array, that might be a little quicker than reading each record individually. And since you have your result set ordered by HID, your %lookup can be faster.

Mark Murphy
STAR BASE Consulting, Inc.
mmurphy@xxxxxxxxxxxxxxx


-----Booth Martin <booth@xxxxxxxxxxxx> wrote: -----
To: RPG programming on the IBM i / System i <rpg400-l@xxxxxxxxxxxx>
From: Booth Martin <booth@xxxxxxxxxxxx>
Date: 08/08/2016 10:49PM
Subject: SQLRPGLE - scrollable cursor, set at a specific record


Confused myself again. I am not even sure how to ask the question
clearly. I have defined a scrollable cursor. It sets to Next & Prior
correctly:

... when *in44 or PB2 = 1; // Next Row exec
sql fetch next from C1 into :wRecordDS; when *in45 or PB2 =
2; // Prev Row exec sql fetch prior from C1 into
:wRecordDS; ...

Here is the Cursor:

... exec sql declare C1 DYNAMIC SCROLL cursor for
select * from FILEA order by HID; exec sql open C1; ...

All that works just fine. Where I am having trouble is with the first
cycle.

... if %parms = 1 and pID <> ' ';_// exec sql fetch ????? from
C1 into :wRecordDS ???where HID = :pID;_ else;
exec sql fetch first from C1 into :wRecordDS; endif; ...

If there is a parm I wish to position the file to the key provided. I
can't figure out how to do it.


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.