idcams的用法.docx
- 文档编号:24080837
- 上传时间:2023-05-24
- 格式:DOCX
- 页数:9
- 大小:17.43KB
idcams的用法.docx
《idcams的用法.docx》由会员分享,可在线阅读,更多相关《idcams的用法.docx(9页珍藏版)》请在冰豆网上搜索。
idcams的用法
FiledUnder()byRaymondon03-12-2020
IDCAMS那个utility要紧功能是通过JCL来操作DataSet和VSAM文件的。
以下JCL的一个STEP,确实是IDCAMS经常使用的利用方式:
//stepnameEXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=A
//*以上的SYSPRINT会把IDCAMS的信息都输出,输出到JOBLOG中
//ddnameDDDSN=…
//*在以上的DD段中,有些JCL需要概念一个DD段,来概念输入DataSet。
有些JCL需要概念两个DD段,在概念了
//*输入DataSet的同时,概念输出DataSet。
//SYSINDD*
//*命令语句
/*
功能一:
复制一个SequentialDataSet
利用REPRO命令来完成复制功能,该命令能够用于复制SequentialDataSet,或复制PartitionedDataSet的member。
具体复制方式如下面的JCL所示:
//STEP1EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=A
//in-ddnameDDDSN=…
//out-ddnameDDDSN=…
//SYSINDD*
REPRO-
INFILE(in-ddname)-
OUTFILE(out-ddname)
/*
如上的JCL所示,上面的JCL用于复制两个SequentialDataSet。
另外,IDCAMS还提供了两个有趣的参数,利用这两个参数,能够有选择地复制DataSet中的记录。
这两个参数别离是COUNT和SKIP,能够在复制的时候添加。
COUNT参数的利用方式如下所示:
REPRO-
INFILE(in-ddname)-
OUTFILE(out-ddname)-
COUNT(n)
以上JCL添加了COUNT参数,在复制的进程中,会只复制‘in-ddname’的前n行记录。
SKIP参数的利用方式如下所示:
REPRO-
INFILE(in-ddname)-
OUTFILE(out-ddname)-
SKIP(n)
以上JCL添加了SKIP参数,在复制的进程中,在复制‘in-ddname’的时候,会跳过前n行记录,即不复制‘in-ddname’的前n行记录。
下面是一个COUNT和SKIP参数一起利用,来操纵复制记录的例子:
REPROINFILE(INDD)OUTFILE(OUTDD)COUNT(100)SKIP(4)
上面的JCL会复制INDD的前100行记录,而且略过前4行记录进行复制。
复制后的结果会保留在OUTDD中。
用IDCAMS程序定义VSAM数据集
1、用于建立和维护VSAM数据集和世代数据集。
2、当使用VSAM数据集或维护系统目录时,必须使用AMS命令。
3、AMS命令分两类:
功能命令,如定义数据集,列表目录等;
辅助命令,作用是设置条件执行功能。
4、AMS实用程序的调用模式
使用AMS主要有TSO环境下通过AMS命令及利用JCL调用方法。
JCL调用模式:
//JOB1JOB
//JOBCATDD
//DSNAME=DB.DATA,DISP=SHR
//STEPEXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSINDD*
COMMANDparameters…
/*
注:
JOBCATDD语句定义一个目录名;
EXEC语句指出AMS程序名为IDCAMS;
SYSPRINTDD语句指定系统的输出信息;
SYSINDD语句为IDCAMS提供各种AMS命令;
5、AMS命令及功能
ALTER:
修改数据集和目录属性;
BLDINDEX:
建立辅助索引;
DEFINEALIAS:
为目录或数据集建立别名;
DEFINEALTERNATEINDEX:
定义辅助索引;
DEFINECLUSTER:
为VSAM数据集定义簇;
DEFINEGENERATIONDATAGROUP:
为世代数据集定义编目入口;
DEFINENONVSAM:
为非VSAM数据集定义编目入口;
DEFINEPAGESPACE:
定义系统页空间数据集;
DEFINEPATH:
定义连接辅助索引与主数据集的路径;
DEFINEUSERCATALOG:
定义用户目录;
DELETE:
删除目录、VSAM及非VSAM数据集;
EXPORT:
中断用户目录与主目录的联系;
IMPORT:
接通用户目录与主目录的联系;
LISTCAT:
列表编目内容;
PRINT:
打印VSAM、非VSAM数据集及目录内容;
REPR:
拷贝VSAM、非VSAM数据集及目录,分类及综合编目功能
新手入门之如何创建和利用GDG(IDCAMS)
本版都是作者原创,转载请注明出处
FROM:
AUTHOR:
Avenguo
世代数据集组GDG(GENERATIONDATAGROUP)是一组编目的数据集,其组内的每一个数据集称为世代数据集或一代数据集,它们具有相同的名字且在时刻序列上是相关的。
如要求保留以年内的工资发放数据,每一个月的工资数据集确实是一个世代数据集,全年12个月的工资数据集便组成了一个世代数据集组。
世代数据集能够是顺序数据集或分区数据集,它能够写在磁盘或磁带上,但一个GDG的所有数据集应驻留在相同介质上。
由于一个GDG中的所有数据集都利用相同的名字,因此要区分各个世代数据集,就要利用世代编号。
世代编号能够是相对编号或绝对编号。
系统在保护GDG时利用绝对编号,而应用程序员通常那么利用相对编号。
相对编号:
假设由一个3代的GDG,PAYROLL.DATA(其中这3代数据集别离为8、9、10三个月份的数据,10月份数据为当前代数据集),那么当前一代数据集(10月份的数据集)表示为:
DSN=PAYROLL.DATA(0),上一代数据集(9月份的数据集)那么表示为SN=PAYROLL.DATA(-1),更早一代的数据集(8月份的数据集)那么表示为:
DSN=PAYROLL.DATA(-2).若是在该GDG中要产生新一代(11月)数据集,那么可写为DSN=PAYROLL.DATA(+1),由此可见这些相对编号时相关于当前一代数据集而言,当前一代数据集用零表示,在当前一代前存入的世代数据集用负数表示,在其以后存入的世代数据集用正数表示。
绝对编号:
在每一个GDG名后加一个后缀GxxxxVyy,其中xxxx为绝对世代编号,yy是版本号(00-99),若是DSN=PAYROLL.DATA(0),对应的实际名字为:
PAYROLL.DATA.G0004V00,而DSN=PAYROLL.DATA(-1),那么对应的实际名字为:
PAYROLL.DATA.G0003V00。
参数:
NAME:
确信了GDG名(STJI.MJA.VE025.TESTGDG),它表示那个GDG的每一代具有的名为:
STJI.MJA.VE025.TESTGDG.GxxxxVyy,那个地址“xxxx”是世代编号,“yy”是版本号;
LIMIT:
指定在GDG中能够有几个世代数据集;
EMPTY或NOEMPTY:
指出当GDG中的世代数据集达到LIMIT给定的最大数,而又要加入新的世代数据集时,是不是将所有世代数据集移出GDG,用EMPTY参数表示全数移出,NOEMPTY表示在GDG01中保留最新的三个世代数据集;
SCRATCH或NOSCRATCH:
指出移出GDG的世代数据集是不是删除,SCRATCH参数表示删除,NOSCRATCH参数表示不删除。
GDG的概念及成立参考JCL4,存入和读取都能够通过IEBGENER来实现
删除一个GDG不像其他类型的数据集那样简单,它需要以下步骤:
(1) 删除GDG中的各个世代数据集
(2) 删除GDGBASE
注:
GDGbase并无实体存在,因此没有卷的问题
复制内容到剪贴板
//JOBCARD
//*********************************************************************
//* STEP00 GDG
//*********************************************************************
//STEP00 EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSOUT DDSYSOUT=*
//SYSIN DD*
DELETESTJI.MJA.VE025.TESTGDGFORCE
IFMAXCC=8THENSETMAXCC=0
DEFINEGDG(NAME(STJI.MJA.VE025.TESTGDG)-
LIMIT(10) -
NOEMPTY-
SCRATCH)
/*
//*********************************************************************
//* STEP02 CREATEANEWFILE
//*********************************************************************
//STEP01 EXECPGM=IEFBR14
//MODEL1 DD DSN=STJI.MJA.VE025.TESTGDG(+1),
// DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,
// SPACE=(TRK,(1,0)),
// DCB=(RECFM=FB,LRECL=64,BLKSIZE=640)
//SYSOUT DD SYSOUT=*
//**********************************************************************
//* STEP03 COPYINPUTDATATOGDS(+2)
//**********************************************************************
//STEP03EXECPGM=IEBGENER
//SYSUT1 DD*
AAAAAAAAAAAA
BBBBBBBBBBBB
CCCCCCCCCCCC
/*
//SYSUT2 DDDSN=STJI.MJA.VE025.TESTGDG(+2),
// DISP=(NEW,CATLG,DELETE),UNIT=SYSDA,
// SPACE=(TRK,(1,0)),
// DCB=(RECFM=FB,LRECL=64,BLKSIZE=640)
//SYSPRINTDDSYSOUT=*
//SYSOUT DDSYSOUT=*
//SYSIN DDDUMMY
//
ALTER参数用来修改概念过得GDG参数。
复制内容到剪贴板
代码:
//JOBCARD
//*********************************************************************
//* STEP00 GDG
//*********************************************************************
//STEP00 EXECPGM=IDCAMS
//SYSPRINTDDSYSOUT=*
//SYSOUT DDSYSOUT=*
//SYSIN DD*
ALTERSTJI.MJA.VE025.TESTGDG-
LIMIT(10) -
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- idcams 用法