Hi Charles, if I well understand your question, the following is a solution: //*------------------------------------------------------------- //ST002 EXEC PGM=SORT //SYSOUT DD SYSOUT=* //SORTIN DD * ....+....1....+....2....+....3....+....4....+....5$$$$$$$$ ....+....1....+...$2....+....3....+....4....+....5 ....+....1....+....2....+....3....+..$.4....+....5 ....+....1....+....2....+....3....+....4....+....5 ....+....1....+....2....+....3....+....4....+...$5 /* //SORTOUT DD DSN=XXXXX.SORTTRK, // UNIT=SYSDA,DISP=(,CATLG),SPACE=(TRK,1) //SYSIN DD * OPTION COPY INREC PARSE=(%01=(ABSPOS=1,ENDBEFR=C'$',FIXLEN=50)), BUILD=(%01) OUTFIL FTOV,VLTRIM=X'40' /* The output file is: ********************************* Top of Data ********************************** ------------------------------------------------------------------------------ ....+....1....+....2....+....3....+....4....+....5 444444444F444444444F444444444F444444444F444444444F BBBBEBBBB1BBBBEBBBB2BBBBEBBBB3BBBBEBBBB4BBBBEBBBB5 ------------------------------------------------------------------------------ ....+....1....+... 444444444F44444444 BBBBEBBBB1BBBBEBBB ------------------------------------------------------------------------------ ....+....1....+....2....+....3....+.. 444444444F444444444F444444444F4444444 BBBBEBBBB1BBBBEBBBB2BBBBEBBBB3BBBBEBB ------------------------------------------------------------------------------ ....+....1....+....2....+....3....+....4....+....5 444444444F444444444F444444444F444444444F444444444F BBBBEBBBB1BBBBEBBBB2BBBBEBBBB3BBBBEBBBB4BBBBEBBBB5 ------------------------------------------------------------------------------ ....+....1....+....2....+....3....+....4....+... 444444444F444444444F444444444F444444444F44444444 BBBBEBBBB1BBBBEBBBB2BBBBEBBBB3BBBBEBBBB4BBBBEBBB ------------------------------------------------------------------------------ ******************************** Bottom of Data ********************************
If you don't need the output to be VB, delete the last command line. Trim the FIXLEN command to the maximum you think your record will be (it's only a "temp" record) and replace the "$" with the character delimiting your record. Regards. Massimo Biancucci ________________________________ Da: Charles Mills <[email protected]> A: [email protected] Inviato: Martedì 15 Gennaio 2013 18:04 Oggetto: Break a dataset into new record boundaries? I've got a dataset that has been mangled through some misguided efforts such that original record boundaries have been lost. It used to be RECFM=V and now it is RECFM=F As luck would have it, every original record begins with the same hex value. Can anyone suggest a simple tool -- z/OS, USS, or Windows -- that would reformat the records breaking on every occurrence of a particular byte value? Yes, I know I will get some false positives, but it's test data, not production data, and I can probably live with that. It would be an improvement on what I have -- that's for sure. I believe I have access to ICETOOL but I am embarrassed to admit I have never used it. I glanced at the doc just now but did not see anything that looked relevant -- but perhaps I missed something. Thanks all! Charles ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
