0

我需要检查 GDG 文件中的字符串,例如,检查文件中的“ABCDEFG”:AAA.BBB.CCC.DDD(0)。

如果是,则将此字符串“ABCDEFG”附加到 PDS 成员的底部:

ABD.EFG.HIG(名称)。

如果两个文件都是PSD文件,没有问题,当我改成GDG和PDS成员时,它不起作用。

我的 Clist 程序无法分配 gdg 文件,也无法附加到成员。当我将文件分配给 SHR 和 OLD 时,它覆盖了成员。MOD 不适用于成员文件。

4

1 回答 1

1

clist 可以访问 GDG,但您必须将文件名从 gdg 相对引用 (0) 转换为完全限定的数据集名称。在您的示例中,您需要将文件引用为:AAA.BBB.CCC.DDD.G1234V00(其中 G1234V00 是最新版本标识符)。

通常,您可以通过编写例程在数据集上运行 LISTCAT 命令、SYSTRAPing 输出然后将完全限定名称解析为 CLIST 变量来执行此操作。

例子:

PROC 0

  /* This illustrates a basic clist method using SYSTRAP */
  /* to extract a fully qualified GDG dataset name       */ 

     CONTROL NOFLUSH NOPROMPT NOLIST NOCONLIST NOSYMLIST NOMSG MAIN 

  /* Target dataset name */
     SET GDG = 'RAPP.RAP000.YQ.TAX.YQINFO.BK'                       

  /* SET SYSTRAP LIMIT and execute IDCAMS LISTC command */
     SET &SYSOUTTRAP = 300                                          
     LISTC ENTRIES(&GDG)                                            

  /* Calculate line number of last entry in LISTC results */
     SET &I = &SYSOUTLINE-21

  /* calculate ending position of GDG name in report */
     SET &L = &LENGTH(&GDG) + 23

  /* extract SYSTRAP data into clist string variable */
     SET &C = &&SYSOUTLINE&I

  /* substring data from SYSTRAP line into clist variable and list */
     SET &D = &SUBSTR(17:&L,&STR(&C))                               
     WRITE &D                                                       
END 

示例输出...

RAPP.RAP000.YQ.TAX.YQINFO.BK.G8203V00


于 2010-08-28T14:41:04.237 回答