сравнить два файла, затем сопоставить и добавить записи, чтобы скопировать два файла сравнения - PullRequest
0 голосов
/ 12 октября 2018

У меня есть требование сравнить два файла, затем сопоставить записи одного файла и сопоставить их в другом файле с помощью кнопок соединения в jcl. Я не уверен, является ли этот файл правильным или нет.Не могли бы вы мне помочь?первый входной файл имеет длину только 18 записей, которая будет сравниваться с входной длиной 18 первых 181002 *

1 Ответ

0 голосов
/ 12 октября 2018

Добро пожаловать в переполнение стека!Вы должны использовать индикаторный метод в 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.

Подробнее здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...