CL:如何遍历库中的所有物理文件?

uSe*_*her 1 ibm-midrange

我想创建一个CL,显示库中所有物理文件的最新版本名称.使用库名作为输入参数,如何显示所有物理文件的名称?一旦我得到名字,我可以继续版本,但我坚持这个.请建议.

提前致谢 :)

Cha*_*les 7

老学校的回答

显示对象描述(DSPOBJD)命令具有接受*OUTFILE的输出参数.您只需在您的DCLF语句中使用模型文件QADSPOBJ,并OVRDBF在使用RCVF命令读取第一条记录之前使用覆盖您的实际输出文件.

问题在于输出文件的格式可能会随着新版本或甚至PTF的应用而改变.

通用现代答案
使用ILE CL和列表对象(QUSLOBJ)API.返回的数据将转储到用户空间中.您可以使用用户空间API在ILE CL程序中访问它.

表(PF)特定的现代答案
(取自jmarkmurphy的答案)
您也可以尝试使用John Y引用的SQL.这是一个将返回库中所有物理文件的Query:

select * 
from qsys2.systables
where table_type in ('P', 'T')
  and table_schema = 'MYLIB'
  and file_type = 'D'
Run Code Online (Sandbox Code Playgroud)