Peter, you don't need to count characters. Use the syntax "80:X" that means "at column 80 put a space" and, afaik all the unitialized filler bytes up to 80 will be blanks.
Best regards. Massimo 2017-10-27 22:09 GMT+02:00 Farley, Peter x23353 <[email protected] >: > Replying to my own post based on subsequent experiments. > > The answer to my question is "Yes, you MUST specify EXACTLY "LRECL" bytes > of output for each line generated by the OUTREC parameter for an FB output > file". > > Annoying to have to count characters and add "nnX," at the end of each > generated line, but I am at least back in business. > > Peter > > -----Original Message----- > From: IBM Mainframe Discussion List [mailto:[email protected]] On > Behalf Of Farley, Peter x23353 > Sent: Friday, October 27, 2017 1:55 PM > To: [email protected] > Subject: Help needed: SYNCSORT issue with OUTFIL CONVERT > > I am processing a VB input file with YYYYMMDD dates that I need to use to > create a set of JCL to execute an application process for each unique > date. SYNCSORT is giving me "SORTOUT HAS INCOMPATIBLE LRECL" but i do not > understand why. > > I am trying to use the OUTFIL CONVERT parameter to generate RECFM=FB, > LRECL=80 output from the VB input file. > > Doesn't the VLFILL parameter default provide the trailing spaces needed > for each FB output record? Or do I have to provide EXACTLY 80 output bytes > for each output record in the OUTREC? > > Any help you can provide is appreciated. > > Peter > > > Here is the SYNCSORT JCL and listing output with some anonymization: > > //GETDATES EXEC PGM=SORT,REGION=250M, > // PARM='EQUALS,MSGDD=SORTLIST,VLTEST=2,VLTESTI=2' > //SORTLIST DD SYSOUT=* > //SORTIN DD DISP=SHR,DSN=TSOUSER.INPUT.VBFILE > //SORTOUT DD DISP=(NEW,CATLG,CATLG), > // DSN=TSOUSER.OUTPUT.FBFILE, > // UNIT=TEST,SPACE=(CYL,(0010,0010),RLSE), > // DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=0,BUFNO=31 > //SYSIN DD * > > SYSIN : > SORT FIELDS=(5,08,CH,A) > OMIT COND=(5,1,CH,EQ,X'00',OR, IGNORE HDR/TRLR > 5,1,CH,EQ,X'FF') > INREC BUILD=(1,4,5:885,8) JUST THE YYYYMMDD DATE > SUM FIELDS=NONE GET UNIQUE DATE > OUTFIL CONVERT,FNAMES=SORTOUT, > OUTREC=(C'//RUNONE EXEC ONEPROC',/, > C'//STEPONE.PARMS DD *',/, > C'@DT=',5,8,/, > C'@LP=',9,4,7,2,/, > C'//*') > WER813I INSTALLATION OPTIONS IN MFX LOAD LIBRARY WILL BE USED > WER276B SYSDIAG= 2203984, 6164664, 6164664, 5599565 > WER164B 65,540K BYTES OF VIRTUAL STORAGE AVAILABLE, MAX REQUESTED, > WER164B 156K BYTES RESERVE REQUESTED, 1,000K BYTES USED > WER146B 24K BYTES OF EMERGENCY SPACE ALLOCATED > WER108I SORTIN : RECFM=VB ; LRECL= 8004; BLKSIZE= 27998 > WER073I SORTIN : DSNAME=TSOUSER.INPUT.VBFILE > WER257I INREC RECORD LENGTH = 12 > WER110I SORTOUT : RECFM=FB ; LRECL= 80; BLKSIZE= 27920 > WER074I SORTOUT : DSNAME=TSOUSER.OUTPUT.FBFILE > WER247A SORTOUT HAS INCOMPATIBLE LRECL > WER211B SYNCSMF CALLED BY SYNCSORT; RC=0000 > > -- > > This message and any attachments are intended only for the use of the > addressee and may contain information that is privileged and confidential. > If the reader of the message is not the intended recipient or an authorized > representative of the intended recipient, you are hereby notified that any > dissemination of this communication is strictly prohibited. If you have > received this communication in error, please notify us immediately by > e-mail and delete the message and any attachments from your system. > > ---------------------------------------------------------------------- > 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
