OK, Let me give you a detail explanation,
Input record #F0008809394404944079Daniel Akaka #1105#?0069.60#10001#10277120112
#F0008809789449044480Lamar Alexander #1410#?0037.87#10002#10277192723
#F0008805203476367222John Barrasso #1404#?0074.01#10003#10277211618
#FB0008800567139045069Baucus Baucus #1408#?0061.59#10004#10277112142
Input file Description Organization . . . : PO Used pages . . . . : 18
Record format . . . : FB % Utilized . . . . : 10
Record length . . . : 80
Block size . . . . : 32720
Data set name type : LIBRARY
Output file DescriptionGeneral Data Current Allocation
Organization . . . : PO Used pages . . . . : 12
Record format . . . : FB % Utilized . . . . : 6
Record length . . . : 80
Block size . . . . : 32720
Data set name type : LIBRARY
Requirement Create 6 error reports that will be sent to the merchant and 1
valid data report (which has all the records without errors)
REPORT1 - Title: Sentinel Error Report
Records without '#F' starting in first column or '?' in column 54
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT1)
REPORT2 - Title: PAN non-Numeric Error Report
Records with any non-numeric in column 6 through 21
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT2)
REPORT3 - Title: Expiration Date non-Numeric Error Report
Records with any non-numeric in column 49 through 52
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT3)
REPORT4 - Title: Sale Amount non-Numeric Error Report
Records with any non-numeric in column 55 through 58 (dollars)
Records with any non-numeric in column 60 through 61 (cents)
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT4)
REPORT5 - Title: Merchant Transaction Number non-Numeric Error Report
Records with any non-numeric in column 63 through 67
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT5)
REPORT6 - Title: Date & Time non-Numeric Error Report
Records with any non-numeric in column 69 through 79
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT6)
REPORT7 - Title: Valid Data Report
Records without errors. These are the remaining records
These are the remaining records excluded from the error reports
Write to aaaaa.aaaaaa.aaaaaa.aaaaa(REPORT7)
My solution//JOBCARD
//STEP01 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=INPUT.FILE,DISP=OLD
//REPORT01 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT1),DISP=SHR
//REPORT02 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT2),DISP=SHR
//REPORT03 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT3),DISP=SHR
//REPORT04 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT4),DISP=SHR
//REPORT05 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT5),DISP=SHR
//REPORT06 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT6),DISP=SHR
//REPORT07 DD DSN=aaaaa.aaaaa.aaaaa.aaaaa(REPORT7),DISP=SHR
//SYSIN DD *
SORT FIELDS=COPY
OUTFIL INCLUDE =(1,2,CH,NE,C'%B',OR,
54,1,CH,NE,C'?'),FNAMES=REPORT01
OUTFIL INCLUDE =(6,16,FS,NE,NUM),FNAMES=REPORT02
OUTFIL INCLUDE =(49,4,FS,NE,NUM),FNAMES=REPORT03
OUTFIL INCLUDE =(55,4,FS,NE,NUM,
OR,60,2,FS,NE,NUM),FNAMES=REPORT04
OUTFIL INCLUDE =(63,5,FS,NE,NUM),FNAMES=REPORT05
OUTFIL INCLUDE =(69,11,FS,NE,NUM),FNAMES=REPORT06
OUTFIL SAVE,FNAMES=REPORT07
/*
Error I am gettingICE143I 0 BLOCKSET COPY TECHNIQUE SELECTED
ICE250I 0 VISIT http://www.ibm.com/storage/dfsort FOR DFSORT PAPERS, E
ICE000I 1 - CONTROL STATEMENTS FOR 5694-A01, Z/OS DFSORT V1R10 - 21:55
SORT FIELDS=COPY
OUTFIL INCLUDE =(1,2,CH,NE,C'#F',OR,
$
ICE007A 1 SYNTAX ERROR
54,1,CH,NE,C'?'),FNAMES=REPORT01
$
ICE007A 0 SYNTAX ERROR
OUTFIL INCLUDE =(6,16,FS,NE,NUM),FNAMES=REPORT02
$
ICE007A 1 SYNTAX ERROR
OUTFIL INCLUDE =(49,4,FS,NE,NUM),FNAMES=REPORT03
$
ICE007A 1 SYNTAX ERROR
OUTFIL INCLUDE =(55,4,FS,NE,NUM,
ICE007A 1 SYNTAX ERROR
OR,60,2,FS,NE,NUM),FNAMES=REPORT04
$
ICE005A 0 BLANK NEEDED IN COLUMN 1 OR OPERATION NOT DEFINED CORRECTLY
OUTFIL INCLUDE =(63,5,FS,NE,NUM),FNAMES=REPORT05
$
ICE007A 1 SYNTAX ERROR
OUTFIL INCLUDE =(69,11,FS,NE,NUM),FNAMES=REPORT06
$
ICE007A 1 SYNTAX ERROR
OUTFIL SAVE,FNAMES=REPORT07
ICE751I 0 C5-K90025 C6-K90025 C7-K54603 C8-K62201 E7-K62201
ICE052I 3 END OF DFSORT
HELP