Page 1 of 1

Omitt records from sort but still include them in output

Posted: Wed Apr 19, 2006 4:45 pm
by korey
Is there a way to use the functionality of SKIPREC=n but not omit the record from the output file.
Sample Input:
999
444
333
111
222

Desired Output:
999
111
222
333
444

Posted: Wed Apr 19, 2006 9:33 pm
by Frank Yaeger
I think you're trying to keep record 1 (a header?) where it is and sort the rest of the records. If that's what you're trying to do, then you can use a DFSORT job like this to do it. I assumed your input file has RECM=FB and LRECL=80, but the job can be changed appropriately for other attributes.

Code: Select all

//S1    EXEC  PGM=ICEMAN
//SYSOUT    DD  SYSOUT=*
//SORTIN DD DSN=...  input file (FB/80)
//SORTOUT DD DSN=...  output file (FB/80)
//SYSIN    DD    *
* Reformat record 1 to:
* |data|A|00000001|
* Reformat records 2-n to:
* |data|B|nnnnnnnn|
  INREC IFTHEN=(WHEN=INIT,OVERLAY=(81:C'B',82:SEQNUM,8,ZD)),
        IFTHEN=(WHEN=(82,8,ZD,EQ,1),OVERLAY=(81:C'A'))
* Sort on A (for record 1) or B (for record 2-n), and data.
* This will keep record 1 in place and sort the rest of
* the records.
  SORT FIELDS=(81,1,CH,A,1,3,CH,A)
* Remove A/B and seqnum
  OUTREC BUILD=(1,80)
/*

If that's not what you're trying to do, then please explain in more detail what it is you're trying to do.

Topic deleted by Admin

Posted: Mon Jan 25, 2016 11:10 pm
by academyindia4
<< Content deleted By Admin >>