Cobol 在运行时显示loadlib
目前在my shop中,我们有一个标准的SYSOUT标题,它显示了一系列有用的信息,例如:Cobol 在运行时显示loadlib,cobol,mainframe,zos,Cobol,Mainframe,Zos,目前在my shop中,我们有一个标准的SYSOUT标题,它显示了一系列有用的信息,例如: 程序名 环境 开始时间 当程序被编译时 对我们来说非常有用的一件事是显示当前程序运行的加载库。我能够在编译时使用IBM内在函数获得编译日期时间,但是我找不到任何可以获得loadlib的东西 正确的方法是什么 从我在ibm main listserv上看到的情况来看,这个问题没有一个通用的解决方案可以在所有情况下都有效。话虽如此,您的具体案例可能有Peter Relson建议的解决方案: 模拟系统搜索顺
- 程序名
- 环境
- 开始时间
- 当程序被编译时
获得编译日期时间,但是我找不到任何可以获得loadlib的东西
正确的方法是什么 从我在ibm main listserv上看到的情况来看,这个问题没有一个通用的解决方案可以在所有情况下都有效。话虽如此,您的具体案例可能有Peter Relson建议的解决方案:
模拟系统搜索顺序,并为相关成员在每个数据集上执行BLDL。找到成员后,您可能知道该成员是从哪个库加载的。我说“可能”是因为可能该成员已加载,然后有人将其从库中删除。然后可能会把它添加到不同的库中
如果您遵循讨论线程,您将看到一个成员成功地创建了一个汇编器模块,以完成我认为您需要的任务。也许他们愿意共享他们的代码,或者已经在CBTTAPE站点上共享了代码。您可以进行控制台转储并查看当前打开的加载模块。一旦有了这些,您就可以将日期时间戳与不同的loadlib进行比较,以找到loadlib
1.在SDSF中,
控制台转储
转储通信=(循环转储)。这将返回ID
2.输入命令:
R id,JOBNAME=(您的_JOBNAME),SDATA=(CSA,GRSQ,LPA,LSQA,NUC,PSA,RGN,SQA,SWA,TRT),结束
3.将转储导入异常终止辅助
4.找到你感兴趣的模块
5.将日期时间与不同的loadlib进行比较该链接信息量极大。在我接受这个答案之前,我会再给它一点时间。谢谢你的回复!如果只显示分配给作业STEPLIB的数据集,这可能是一项简单得多的任务。这比试图推断程序加载的实际库要容易得多。