Как получить список программ, использующих один и тот же физический файл в As400?

#ibm-midrange

Вопрос:

Например, если TESTPF-это файл и, и он используется в PGM1, PGM2….. PGM10. И если я хочу получить список всех этих названий программ, есть ли какая-либо команда или метод для получения списка ?

Ответ №1:

ДА. Команда такова DSPPGMREF . Эта команда возвращает (либо на экран, либо в выходной файл) все программы и файлы, на которые ссылается программа. Вы можете выполнить эту команду для всех программ в библиотеке с выводом в файл, а затем запросить файл, чтобы найти все программы, ссылающиеся на данный файл.

 DSPPGMREF PGM(MYLIB/*ALL)        
          OUTPUT(*OUTFILE)       
          OBJTYPE(*ALL)          
          OUTFILE(MYLIB/MYLIBREF)
 

Затем:

 SELECT WHLIB, WHPNAM
FROM MYLIB/MYLIBREF
WHERE WHFNAM = 'TESTPF'
 

ПРИМЕЧАНИЕ. Если вы используете логические файлы, имя файла, на который ссылается ссылка, будет логическим файлом, а не физическим файлом.

Ответ №2:

Проверьте команду Показать ссылки на программы (DSPPGMREF).

Выведите результаты в файл, OUTPUT(*FILE) и вы можете использовать SQL для запроса.