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



Check out Scott Klement's sqlqsh to improve on this. But this is an
untra-simple way to get all the data from an externally-defined file to a
"flat file" that just works:


CRTPF MYLIB/MYOUTFILE RCDLEN(2048)
QSH

db2 'select * from mylib.myfile' >
/qsys.lib/mylib.lib/myoutfile.file/myoutfile.mbr

Scott's utility adds the ability to remove headings and otherwise manipulate
the output and its format.

Dennis Lovelady
http://www.linkedin.com/in/dennislovelady
--
"Fear of becoming a has-been keeps some people from becoming anything."
-- Eric Hoffer



Thank you Alan, this is what I am trying to do and I am working on it;
hopefully I will make it work.
I started this thread because I hated to see 50 %subst commands (one per
field). I wrote few and it looked so ugly then I decided to ask
professionals...

Thank you


Florin Todor



-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Alan Campin
Sent: Wednesday, September 14, 2011 1:45 PM
To: RPG programming on the IBM i / System i
Subject: Re: Populate a one-field file from a multi-field physical file

What I hear you saying is that the format of the two files is not the
same
so you have something like this:

File1 (DDS described)

Field1 5p 2
Field2 7p 2
Field3 50a

File 2 (Single field)

Field1 3a (H01 or D01)
Field2 5s 2
Field3 7s 2
Field4 50a

If yes, then

1. Define a qualified data structure for the new table.

d dsFile1...
d ds Qualified
d FieldType...
d 3a
d Field1...
d 5s 2
d Field2...
d 7s 2
d Field3...
d 50a

2. Read the record into an externally defined data structure.

3. Use a eval corresponding to move the data.

eval-corr dsFile1 = FileIn.

Is this what you are talking about?

On Wed, Sep 14, 2011 at 10:56 AM, Florin Todor - YYZ Concord <
ftodor@xxxxxxxxxxxxxxxx> wrote:

Paul (and Rory)

The CPY command would work fine except that I have many packed fields
in
the input file; plus, on the first three positions on the output
record
I have to hardcode the record type ('H01' - Header, 'D01' - Detail)
(I simply forgot to mention this in my OP - sorry for that)


Thank you


Florin Todor




-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Morgan, Paul
Sent: Wednesday, September 14, 2011 12:07 PM
To: RPG programming on the IBM i / System i
Subject: RE: Populate a one-field file from a multi-field physical
file

Florin,

Use a program defined file for the 50 field file. Alternatively you
could just use CPYF with FMTOPT(*NOCHK).

Paul Morgan

Principal Programmer Analyst
IT Supply Chain/Replenishment

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Florin Todor - YYZ
Concord
Sent: Wednesday, September 14, 2011 10:32 AM
To: rpg400-l@xxxxxxxxxxxx
Subject: Populate a one-field file from a multi-field physical file

Hello all,



I have this situation: a physical file having, let's say, 50 fields
and
another file having one-field of 2000 characters long; I would like to
move the entire record from the first file to the second one...

Obviously, this could be accomplished using %subst BIF but I could bet
100 bucks there is a better and simpler way (I've tried something with
data structures but I couldn't make it work).

Any suggestion would be appreciated.





Thank you





Florin Todor









--
This is the RPG programming on the IBM i / System i (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.


--
This is the RPG programming on the IBM i / System i (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.

--
This is the RPG programming on the IBM i / System i (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.


--
This is the RPG programming on the IBM i / System i (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.

--
This is the RPG programming on the IBM i / System i (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.



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.