expat
Global Moderator
Joined: 14 Mar 2007 Posts: 8797 Location: Welsh Wales
|
|
|
|
Here's an example using DFSORT that Frank has used before. I've kept it as a reference to do this type of process.
You need to reformat the two sets of records and then SPLICE them together. The original comments are still embedded into the source code.
Code: |
//S1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//IN1 DD DSN=&PREFIX.&SYSUID..&SYSTID.TEST.ONE,DISP=SHR
//IN2 DD DSN=&PREFIX.&SYSUID..&SYSTID.TEST.TWO,DISP=SHR
//T1 DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(MOD,PASS)
//OUT DD SYSOUT=*
//TOOLIN DD *
* REFORMAT IN1 TO CONTAIN:
* | BLANKS | KEY | IN1 DATA |
COPY FROM(IN1) TO(T1) USING(CTL1)
* REFORMAT IN2 TO CONTAIN:
* | IN2 DATA | KEY | BLANKS |
COPY FROM(IN2) TO(T1) USING(CTL2)
* SPLICE THE MATCHING IN1/IN2 RECORDS TO PRODUCE:
* | IN2 DATA | KEY | IN1 DATA |
SPLICE FROM(T1) TO(OUT) ON(14,3,CH) -
WITHALL WITH(1,13)
/*
//CTL1CNTL DD *
OUTREC FIELDS=(14:1,3,17:4,26,60:X)
/*
//CTL2CNTL DD *
OUTREC FIELDS=(1,20,60:X)
/*
|
|
|