我被指派学习一系列CL课程。这些程序共同执行一些所需的任务。其中一些以批处理方式运行,另一些以交互方式运行。若其中任何一个最终出现错误,则执行DMPCLPGM语句,从而生成QPPGMDMP假脱机文件。现在,由于一些设计缺陷,当程序在失败后重新运行时,QPPGMDMP以某种方式被删除。此假脱机文件旨在保留,以便人们以后可以研究错误的原因。由于要检查的程序太多,所以简单地扫描所有源成员是不可行的。我的计划是以某种方式锁定假脱机文件,这样当它即将被程序删除时,就会导致特定程序崩溃。这种方法的实用性如何?或者有没有其他更好的方法来追溯负责删除QPPGMDMP的程序?非常感谢。
确定后台处理文件发生了什么的最简单方法是使用CHGSECAUD
命令启用安全审核,并确保为*SPLFDTA
启用了审核。
然后,您可以使用DSPAUDJRNE ENTTYPE(SF)
命令监视后台处理文件的活动。
更多信息:
- 使用安全审核日志
- 使用查询或程序分析审计日记账分录
您应该弄清楚是什么在删除它们。正在打印吗?SAVE(*YES)
可以解决这个问题。它正在被删除吗?那么你无法阻止它。你需要解决这个问题。我想另一个选项是将spool文件的权限更改为运行的用户无权删除的内容。
虽然可能有其他方法可以删除假脱机文件,但通常DLTSPLF
是罪魁祸首。
您可以使用这篇文章来了解有关更改权限的信息。
你确定他们正在被删除,只是从来没有创建过吗?