Добро пожаловать в переполнение стека!Вы должны использовать индикаторный метод в dfsort , чтобы получить то, что вы ожидаете.См. Ниже операторы SORT.
JOINKEYS FILE=F1,FIELDS=(1,18,A)
JOINKEYS FILE=F2,FIELDS=(1,18,A)
REFORMAT FIELDS=(F2:1,258,F2:264,1,F2:334,2,?)
OUTFIL FNAMES=BOTH,INCLUDE=(262,1,CH,EQ,C'B'),BUILD=(1,261)
OUTFIL FNAMES=F1ONLY,INCLUDE=(262,1,CH,EQ,C'1'),BUILD=(1,258)
OUTFIL FNAMES=F2ONLY,INCLUDE=(262,1,CH,EQ,C'2'),BUILD=(259,3)
?
в REFORMAT FIELD
отвечает за заполнение индикатора @ 262-й позиции.Если ключ совпадает в обоих файлах, 262-я позиция будет иметь B
, что означает ОБА.Если ключ не соответствует, 262-я позиция сообщит вам, из какого файла записана запись, 1
или 2
.
Примечание:
Вы можете изменить оператор BUILD
для записи необходимых столбцов, если ключи не сопоставлены.Убедитесь, что эти столбцы упоминаются в REFORMAT FIELDS
.
Убедитесь, что в JCL есть имена DD BOTH
, F1ONLY
и F2ONLY
.
Подробнее здесь