|
Accessing the IFS, reading and writing data from and to the IFS with SQL
and
RPG is not very well documented.
You need to define a file reference variable (which is converted by the
precompiler into a data structure).
You need to initialize the data structure subfields with the IFS-File-Name,
the length of the IFS-File-Name and the file operation (SQFRD = Read Only,
SQFCRT=Create, SQFOVR=Override, SQFAPP=Append).
Now you can read or manipulate the IFS file with SQL functions like any
character variable.
Some documentation can be found under the following link:
https://www.ibm.com/support/knowledgecenter/ssw_ibm_i_73/
rzajp/rzajpirpglobf
ileref.htm
Here is a simple example how to write to the IFS:
DCL-S ParIFSFile VarChar(256) inz('/home/Hauser/MyIFSFile.Txt');
DCL-S LocClobFile SQLTYPE(Clob_File);
DCL-S CRLF Char(2) inz(x'0D25');
//----------------------------------------------------------
----------------
--
Clear LocClobFile;
LocClobFile_Name = %Trim(ParIFSFile);
LocClobFile_NL = %Len(%Trim(LocClobFile_Name));
LocClobFile_FO = SQFOVR; //Create / Override existing IFS File
Exec SQL Set :LocClobFile = 'Always desire to learn something useful.'
concat :CRLF;
LocClobFile_FO = SQFAPP; //Add Data
Exec SQL Set :LocClobFile = 'Success has a simple formula: ' concat
'do your best, and people may like it. '
concat :CRLF;
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
„Train people well enough so they can leave, treat them well enough so they
don't want to.“ (Richard Branson)
-----Original Message-----
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Jeff
Young
Sent: Freitag, 30. Juni 2017 15:34
To: rpg400-l@xxxxxxxxxxxx
Subject: Read IFS file using SQL
All,
I have seen references here recently and in the past regarding using SQL to
read /Write files (tables) residing on the IFS, but can not find anything
in the IBM reference manuals.
I am working with systems on 7.2.
Can someone point me to the appropriate manual or link on how to do this?
I am very comfortable working with SQL and even the Unix/C procedures for
accessing the IFS in RPGLE.
Jeff Young
Sr. Programmer Analyst
--
This is the RPG programming on the IBM i (AS/400 and 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.
Please contact support@xxxxxxxxxxxx for any subscription related
questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link:
http://amzn.to/2dEadiD
--
This is the RPG programming on the IBM i (AS/400 and 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.
Please contact support@xxxxxxxxxxxx for any subscription related
questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: http://amzn.to/2dEadiD
As an Amazon Associate we earn from qualifying purchases.
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.