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



On 2019-10-22 2:39 p.m., Buddy McClean wrote:
I went that direction but then found this rule
If name ( factor 2 )refers to an externally-described file or a record format from an externally described file, the data structure must be a data structure defined with EXTNAME ( http://127.0.0.1:27514/help/topic/com.ibm.etools.iseries.ilerpg.ref.f1.doc/topics/dextnam.htm#dextnam )(...:*INPUT or *ALL) or LIKEREC ( http://127.0.0.1:27514/help/topic/com.ibm.etools.iseries.ilerpg.ref.f1.doc/topics/dlikerec.htm#dlikerec )(...:*INPUT or *ALL).
I took that as - only program described files can be read into a generic DS.
Then I went way off the edge and contemplated doing a READ, looping with each format name until I had a match, then read one last time with the correct DS.

Define a qualified data structure with data-structure subfields in position 1 for all the formats in the file. Also, define an INFDS for your file with a char(10) subfield in position 261 that will tell you which format was read.

dcl-f myfile infds(myfile_infds);
dcl-ds myfile_infds;
io_rcd_fmt char(10) pos(261);
end-ds;

dcl-ds ds_all_fmts qualified;
fmt1 likerec(fmt1) pos(1);
fmt2 likerec(fmt2) pos(1);
...
end-ds;

read myfile ds_all_fmts;
select;
when io_rcd_fmt = 'FMT1';
... use ds_all_fmts.fmt1
when io_rcd_fmt = 'FMT2';
... use ds_all_fmts.fmt2
...
endsl;


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.