以编程方式更改 PDS 成员的 ISPF 统计信息中的用户 ID

Posted

技术标签:

【中文标题】以编程方式更改 PDS 成员的 ISPF 统计信息中的用户 ID【英文标题】:Change user-id in the ISPF statistics of a PDS member programatically 【发布时间】:2015-08-11 06:35:37 【问题描述】:

我正在尝试更改 PDS 中模块的用户 ID 值。

这可以在 ISPF 中以交互方式完成,使用菜单选项 3.5(在非自定义 ISPF 设置中)。

我想使用 Rexx 程序来代替。

【问题讨论】:

如果你想分配任何 ds,你可以使用命令 ""ALLOCATE DA('"dataset_name"') NEW SPACE(20,50) DSORG(PS) RECFM(F,B ) LRECL(80) BLKSIZE(800)" 。我想要这样的命令来重置 id,我们可以使用选项 3.5 Reset Ispf Statistics 选项来做到这一点,但我想要可以在 REXX 程序中使用的命令。跨度> 【参考方案1】:

最好使用 ISPF 服务 LMMSTATS。

//TSOBATCH EXEC PGM=IKJEFT01,DYNAMNBR=40,PARM='ISPSTART CMD(%GENDIAG)'
//ISPPROF  DD DSN=&&T,DISP=(,PASS),SPACE=(CYL,(10,10,10),RLSE),       
//            DCB=(SYS1.PARMLIB)                                     
//ISPMLIB  DD DSN=SYS1.SISPMENU,DISP=SHR                             
//ISPPLIB  DD DSN=SYS1.SISPPENU,DISP=SHR                             
//ISPSLIB  DD DSN=SYS1.SISPSENU,DISP=SHR                             
//         DD DSN=SYS1.SISPSLIB,DISP=SHR                             
//ISPTLIB  DD DSN=SYS1.SISPTENU,DISP=SHR                             
//SYSPROC  DD DSN=&SYSUID..GENDIAG,DISP=SHR                           
//SYSTSPRT DD SYSOUT=*                                               
//SYSPRINT DD SYSOUT=*                                               
//SYSOUT   DD SYSOUT=*                                               
//SYSIN    DD DUMMY,DCB=BLKSIZE=80                                   
//SYSTSIN  DD DUMMY,DCB=BLKSIZE=80
/**********************************************************************/
/* RESET ISPF STATS TO USERID ISPF_USERID                     */
/**********************************************************************/
ISPFSTATS:PROCEDURE                                                     
PARSE ARG ISPF_DSN,ISPF_MEMBER,ISPF_USERID                             
ADDRESS ISPEXEC                                                         
"LMINIT DATAID(DATAID) DATASET('"ISPF_DSN"') ENQ(SHR)"                 
"LMOPEN DATAID("DATAID")"                                               
"LMMSTATS DATAID("DATAID") MEMBER("ISPF_MEMBER"),USER("ISPF_USERID")"   
 LMMSTATS_RC=RC                                                         
"LMFREE DATAID("DATAID")"                                               
RETURN LMMSTATS_RC               

我已将 JCL 和代码从这里粘贴在一起,http://ibmmainframeforum.com/viewtopic.php?f=18&t=1772,由用户 ehrocha 提供。

您应该在 Internet 上找到 IBM 免费提供的 Interactive System Productivity Facility (ISPF) Services Guide,用于您的 z/OS 版本。在那里,您可以找到 LMMSTATS 的完整文档以及所有其他可用的 ISPF 服务。

【讨论】:

值得感谢的是ehrocha,我只是做了搜索引擎和粘贴。如果您在遇到问题时进行一些研究,那就很多了。

以上是关于以编程方式更改 PDS 成员的 ISPF 统计信息中的用户 ID的主要内容,如果未能解决你的问题,请参考以下文章

从 rexx 代码向 ispf 宏传递参数时出现无效长度错误

如何批量运行 ISPF 编辑宏

访问 ZFile (JZOS) 的统计信息/成员信息

如何在大型机ispf中列出项目中的所有cobol程序

有没有办法在大型机上使用 python 脚本发送 ISPF 命令并获取作业统计信息?

将参数从 ISPF DSLIST 自动传递到 REXX 脚本