Перечисление объектов во всех библиотеках внутри QSYS.LIB

Существует довольно много исчерпывающей информации о таблицах (PF в том числе PF-SRC,LF и т. д.) проживает в QSYS2.SYSTABLES,

Однако, когда дело доходит до перечисления всех объектов (например, включая PGM, SRVPGM,DTAQ,DTAARA и так далее) в какой-то библиотеке существует единственный источник информации?

Интересно, можно ли запросить такую ​​информацию без *ALLOBJ предоставляется privellege, если нужно только узнать имя и тип файла?

Прямо сейчас единственное, что приходит в голову, это полагаться на SYSTABLES и перечислить все объекты, связанные с PF + LF, Затем определите источник, из которого были скомпилированы эти объекты (если есть), и помолитесь, чтобы остальные объекты были также скомпилированы из этого источника.

Однако это не поможет, если бы был источник, скажем, PGM-только.

Есть идеи?

1 ответ

Решение

Проверьте UDTF OBJECT_STATISTICS.

Найти все журналы в библиотеке MJATST.

SELECT * FROM TABLE (QSYS2.OBJECT_STATISTICS('MJATST ','JRN') ) AS X;

или же

SELECT * FROM TABLE (QSYS2.OBJECT_STATISTICS('MJATST ','*JRN') ) AS X ;

Найти все журналы и журналы получателей в библиотеке MJATST.

SELECT * FROM TABLE (QSYS2.OBJECT_STATISTICS('MJATST ','JRN JRNRCV') ) AS X;

или же

SELECT * FROM TABLE (QSYS2.OBJECT_STATISTICS('MJATST ','*JRN *JRNRCV') ) AS X ;

Найти все программы и сервисные программы в библиотеке MYLIB. Используйте *ALLSIMPLE, чтобы быстро вернуть список, опуская подробную информацию.

SELECT * FROM TABLE (QSYS2.OBJECT_STATISTICS('MYLIB','PGM SRVPGM', '*ALLSIMPLE') ) AS X;
Другие вопросы по тегам