Вы можете сделать это в несколько этапов работы. В качестве наброска:
- Перехватывать вывод из LISTDS 'input-pds-name' MEMBERS в набор данных
- манипулировать списком MEMBERS с помощью ICETOOL для создания команд IDCAMS REPRO и DELETE
- запустить IDCAMS REPRO
- запустить IDCAMS УДАЛИТЬ
Настройка ICETOOL для выбора и форматирования списка MEMBERS в команды REPRO/DELETE, безусловно, самый сложный шаг. На самом деле вам, возможно, потребуется выполнить пару шагов ICETOOL, чтобы получить все правильно. Это может занять очень много времени, если у вас нет большого опыта использования ICETOOL. Вот ссылка на Руководство по программированию IBM DFSORT (ICETOOL — это всего лишь интерфейс BATCH для DFSORT), чтобы дать вам некоторое представление о том, с чем вы сталкиваетесь.
Я предлагаю альтернативный подход. Попробуйте написать REXX-процедуру вместо шага ICETOOL. Захват вывода LISTDS и форматирование его в соответствующие команды IDCAMS REPRO/DELETE будет гораздо более простым процессом.
REXX доступен практически на каждом мейнфрейме IBM, поэтому доступ к нему не должен быть проблемой.
Пожалуйста, предоставьте немного больше информации о ваших соглашениях об именах наборов данных, если вам нужна дополнительная помощь. В частности, выходные имена PDS. Мне не нужны и не нужны точные имена, просто то, как они устроены. Например, выглядят они примерно так:
- HLQ.НЕКОТОРОЕ ИМЯ.ФАЙЛ001
- HLQ.НЕКОТОРОЕ ИМЯ.ФАЙЛ002
- HLQ.НЕКОТОРОЕ ИМЯ.ФАЙЛ003
где первые 100 элементов копируются в FILE001, следующие 100 — в FILE002 и так далее. Это может повлиять на то, насколько универсальной вы можете сделать утилиту копирования файлов. Кроме того, вы продолжаете копировать блоками по 100 до тех пор, пока входной PDS не будет исчерпан, или есть какой-то предел остановки?
person
NealB
schedule
28.09.2010