Извлечение данных из входного файла с использованием SORT в различные выходные файлы, не обеспечивающие ожидаемые данные
Я использую SORT для обработки входного файла и извлечения записей, которые соответствуют трем различным критериям. Критерии изложены в контрольных заявлениях. Я ищу поля, соответствующие тексту GROUND OPERATIONS
, TECHNICAL OPERATI
а также AIRPORT TRANSFERS
, Я хочу, чтобы записи из входных данных, которые соответствуют каждому из условий, были записаны в соответствующий выходной файл. DD для выходного файла SORTOF01
, SORTOF02
а также SORTOF03
соответственно.
Я вижу, что во входном файле есть записи, которые соответствуют моим критериям, но при выполнении SORT завершается, но записи не выбираются. Я что-то упускаю, но я не знаю, что это. JCL и управляющие операторы для сортировки приведены ниже.
//PROB3 EXEC PGM=SORT
//SORTIN DD DSN=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLNON,DISP=SHR
//SORTOF01 DD DSN=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLN01,
// DISP=(NEW,CATLG,DELETE),
// LIKE=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLNON
//SORTOF02 DD DSN=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLN02,
// DISP=(NEW,CATLG,DELETE),
// LIKE=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLNON
//SORTOF03 DD DSN=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLN03,
// DISP=(NEW,CATLG,DELETE),
// LIKE=XXX.T.KR0Z1N99.RU02.FTPGEN.THOTLNON
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=COPY
INCLUDE COND=(93,3,CH,EQ,C'YES')
OUTFIL FILES=01,INCLUDE=(73,20,CH,EQ,C'GROUND OPERATIONS')
OUTFIL FILES=02,INCLUDE=(73,20,CH,EQ,C'TECHNICAL OPERATI')
OUTFIL FILES=03,INCLUDE=(73,20,CH,EQ,C'AIRPORT TRANSFERS')
1 ответ
Попробуйте изменить длину от 20
в 17
как показано ниже
//SYSIN DD *
SORT FIELDS=COPY
INCLUDE COND=(93,3,CH,EQ,C'YES')
OUTFIL FILES=01,INCLUDE=(73,17,CH,EQ,C'GROUND OPERATIONS')
OUTFIL FILES=02,INCLUDE=(73,17,CH,EQ,C'TECHNICAL OPERATI')
OUTFIL FILES=03,INCLUDE=(73,17,CH,EQ,C'AIRPORT TRANSFERS')
Сравнение 20 байтов с 17 байтами, вероятно, будет ложным
При возникновении проблем с сортировкой всегда проверяйте формат записи, если RECFM
VB вам нужно add 4
на все позиции