If you follow the logic of your code, you'll see that you assign the IFS filename by the AUDFLD value. However, this won't be populated until you do a FETCH, so, I'm guess your filename is invalid when the first fetch occurs. Then, before the second fetch, you'll be assigning the filename from the previous fetch's filename, so, it give the appearance of lagging by one record.
-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Art Tostaine, Jr.
Sent: Monday, May 16, 2022 3:54 PM
To: RPG programming on the IBM i (AS/400 and iSeries) <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Extracting all BLOB's from table
CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.
I have code like this that gets one blob. While debugging it looks like the blob isn't written to my IFS directory until the 2nd fetch happens, IOW, you have to setup the blob name before you do the fetch.
The file name needs to contain the value of AUDFID. How can I just read through all of the rows and export the blob with the correct name?
Code:::
EXEC SQL Declare C1 Cursor for
Select lwiimage, audfid
from lwimages
EXEC SQL Open C1;
BLOB_NAME = '/IASP/PublicAS400/Images/' +
%trim(audfid) +
'.jpg';
blob_nl = %len(%trim(blob_name));
blob_fo = SQFOVR;
EXEC SQL Fetch Next from C1 into :blob, :audfid;
dow sqlstt = '00000';
BLOB_NAME = '/IASP/PublicAS400/Images/' +
%trim(audfid) +
'.jpg';
blob_nl = %len(%trim(blob_name));
blob_fo = SQFOVR;
EXEC SQL Fetch Next from C1 into :blob, :audfid;
enddo;
return;
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or change list options,
visit:
https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related questions.
Help support midrange.com by shopping at amazon.com with our affiliate link:
https://amazon.midrange.com
As an Amazon Associate we earn from qualifying purchases.