For anyone interested, and for the archives, here is how Frank solved my 
problem:
 
//S1 EXEC PGM=ICETOOL
//TOOLMSG DD SYSOUT=*
//DFSMSG DD SYSOUT=*
//IN DD DSN=... input file
//T1 DD DSN=&&T1,UNIT=SYSDA,SPACE=(CYL,(5,5)),DISP=(,PASS)
//OUT DD SYSOUT=*
//TOOLIN DD *
  COPY FROM(IN) TO(T1) USING(CTL1)
  SPLICE FROM(T1) TO(OUT) ON(130,8,ZD) -
    WITHEACH WITH(41,16) WITH(58,28) WITH(87,12) WITH(100,14) -
    WITH(115,13) USING(CTL2)
/*
//CTL1CNTL DD *
OMIT FORMAT=CH,
   COND=(1,5,EQ,C'1PAGE',OR,10,6,EQ,C'MODULE',OR,12,1,EQ,C' ')
INREC IFTHEN=(WHEN=INIT,OVERLAY=(130:SEQNUM,8,ZD)),
      IFTHEN=(WHEN=(12,7,CH,EQ,C'LASTUPD'),
              BUILD=(C' MOD=',2,9,C'LASTUPD=',30,17,
                     130:SEQNUM,8,ZD)),
      IFTHEN=(WHEN=(12,7,CH,NE,C'LASTUPD'),
              OVERLAY=(138:SEQNUM,8,ZD,
                       130:130,8,ZD,SUB,138,8,ZD,M11,LENGTH=8),
              HIT=NEXT),
      IFTHEN=(WHEN=(12,9,CH,EQ,C'LIBRARIES'),
              BUILD=(41:30,16,130:130,8),HIT=NEXT),
      IFTHEN=(WHEN=(12,4,CH,EQ,C'FMID'),
              BUILD=(58:C'SYSLIB=',74:C'FMID=',30,7,
                     130:130,8),HIT=NEXT),
      IFTHEN=(WHEN=(12,4,CH,EQ,C'RMID'),
              BUILD=(87:C'RMID=',30,7,
                     130:130,8),HIT=NEXT),
      IFTHEN=(WHEN=(12,5,CH,EQ,C'CSECT'),
              BUILD=(100:C'CSECT=',30,8,
              130:130,8),HIT=NEXT),
      IFTHEN=(WHEN=(12,4,CH,EQ,C'LMOD'),
              BUILD=(115:C'LMOD=',30,8,
              130:130,8),HIT=NEXT)
/*
//CTL2CNTL DD *
OUTFIL FNAMES=OUT,OUTREC=(1,129)
/*

Here's what the first three records in OUT look like (one line per LASTUP 
group):

MOD=EDC40321 LASTUPD=HLE7703 TYPE=ADD DISTLIB=AEDCMOD1 SYSLIB= FMID=HLE7703 
RMID=UQ46415 CSECT=EDCOILNA LMOD=CEEEV003
MOD=EDC40322 LASTUPD=HLE7703 TYPE=ADD DISTLIB=AEDCMOD1 SYSLIB= FMID=HLE7703 
RMID=UQ46415 CSECT=EDCOIMAK LMOD=CEEEV003
MOD=EDC40323 LASTUPD=HLE7703 TYPE=ADD DISTLIB=AEDCMOD1 SYSLIB= FMID=HLE7703 
RMID=UQ46415 CSECT=EDCOINET LMOD=CEEEV003


Frank Yaeger <[EMAIL PROTECTED]> wrote:
Barry A Schwarz wrote:
> SMP/E produces a block of lines for each element. Something like
>
> element-name LASTUPD = aaaa
> LIBRARIES = DISTLIB=bbbb
> FMID = cccc
> RMID = dddd
>
>I would like to convert it to a one line entry along the lines of
>
> element-type name aaaa bbbb cccc dddd
>
>I have already done something very similar for DDDEFs in REXX but I'm
>looking for something with better performance.
>
>Does anyone have a suggestion, such as a set of DFSORT/ICETOOL
>statements?

Barry,

I don't use SMP/E, so I'm not familiar with the actual output it produces.

If you could show me an actual example (with real values in their
actual positions) of the records it produces for several elements
and the output you want (with real values) for each element, I'll try
to come up with a DFSORT/ICETOOL job for you.

Also, what is the RECFM and LRECL of the input file?

                
---------------------------------
Yahoo! Sports
 Rekindle the Rivalries. Sign up for Fantasy Football

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to