IDCAMS Sample Job Streams
List Catalog Entries for a file
//LISTCAT JOB (7728,JRTS),'LIST CATALOG',MSGCLASS=K
//STEP01 EXEC PGM=IDCAMS,REGION=1024K
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
LISTCAT ENTRIES(FACT.VSAM.ROUTELST) ALL
LISTCAT ENTRIES (CICS.PRODLIB) ALL CATALOG(CATALOG.PROD.VMSLE02)
LISTCAT ENTRIES (CICS.PRODLIB) ALL CATALOG(CATALOG.VMSLCIC)
LISTCAT CL AIX DATA IX PATH ALL CATALOG(CATALOG.MSL.MASTER)
LISTCAT CL AIX DATA IX PATH ALL CATALOG(CATALOG.PROD.VMSLE02)
LISTCAT NONVSAM ALL CATALOG(CATALOG.MSL.MASTER)
LISTCAT ALIAS CATALOG(CATALOG.MSL.MASTER)
//
Print Records from a file
//PRTVSAM JOB (7728,JRTS),'PRINT VSAM RECORD',MSGCLASS=K
//STEP01 EXEC PGM=IDCAMS,REGION=2048K
//SYSPRINT DD SYSOUT=*
//BASE DD DSN=FACT.TEST.POLICY.MASTER,DISP=SHR
//NAME DD DSN=FACT.TEST.POLICY.MASTER.NAME,DISP=SHR
//ALPHA DD DSN=FACT.TEST.POLICY.MASTER.ALPHA,DISP=SHR
//POLICY DD DSN=FACT.TEST.POLICY.MASTER.NUMBER,DISP=SHR
//SYSIN DD *
PRINT IFILE(BASE) FKEY(X'F223280000F0F0F0F0F0F1F7F7F0F0F0') -
COUNT (1)
PRINT IFILE(NAME) FKEY('SUL ') COUNT (1)
PRINT IFILE(ALPHA) FKEY(X'0050000CC04040') COUNT (1)
PRINT IFILE(POLICY) FKEY('000001770') COUNT (1)
//
Unload and Reload a File
//COPYVSAM JOB (7728,JRTS),'UNLOAD AND RELOAD',COND=(1,LE),MSGCLASS=K
//*
//* THIS JOB UNLOADS A VSAM FILE TO A SEQUENTIAL FILE
//* DELETES AND REDEFINES THE VSAM FILE
//* RELOADS THE VSAM FILE THUS GETTING RID OF ALL SPLITS
//*
//STEP00 EXEC PGM=SYSUNCAT
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
JRT.MSTRTAB.DATA
//STEP01 EXEC PGM=IDCAMS,REGION=4M
//SYSPRINT DD SYSOUT=*
//OUTPUT DD DSN=JRT.MSTRTAB.DATA,DISP=(NEW,CATLG),UNIT=SYSDA,
// DCB=(RECFM=FB,LRECL=150,BLKSIZE=9000),
// SPACE=(CYL,(10,10),RLSE)
//INPUT DD DSN=MTAB.VSAM.MSTRTAB,DISP=SHR,
// AMP=('AMORG,BUFND=200,BUFNI=50')
//SYSIN DD *
REPRO -
INFILE(INPUT) -
OUTFILE(OUTPUT)
//STEP03 EXEC PGM=IDCAMS,REGION=1024K
//SYSPRINT DD SYSOUT=*
//VOL1 DD UNIT=(3380,8),DISP=SHR,VOL=SER=(MSLRES,MSLCAT,
// MSLDLB,MSLD03,MSLSPL,MSLE01,MSLE02,MSLE03)
// DD UNIT=(3350,8),DISP=SHR,VOL=SER=(335009,335010,
// 335011,335012,335013,335014,335015,335016)
//SYSIN DD *
DELETE (MTAB.VSAM.MSTRTAB) -
CLUSTER -
FILE(VOL1) -
CATALOG(CATALOG.PROD.VMSLE02)
/* */
IF LASTCC = 8 -
THEN -
SET MAXCC=0
/* */
DEFINE CLUSTER( -
NAME(MTAB.VSAM.MSTRTAB) -
VOLUMES(MSLD03) -
FILE(VOL1) -
INDEXED -
IMBED -
REPLICATE -
REUSE -
KEYS(07 00) -
OWNER(F1505) -
RECORDSIZE(150 150) -
FREESPACE(10 10) -
SHAREOPTIONS(2 3) -
SPANNED -
SPEED ) -
DATA( -
NAME(MTAB.VSAM.MSTRTAB.DATA) -
CONTROLINTERVALSIZE(8192) -
OWNER(F1505) -
CYLINDERS(001 001) ) -
INDEX( -
NAME(MTAB.VSAM.MSTRTAB.INDEX) -
CONTROLINTERVALSIZE(4096) -
OWNER(F1505) -
TRACKS(02 01) ) -
CATALOG(CATALOG.PROD.VMSLE02)
//STEP04 EXEC PGM=IDCAMS,REGION=4M
//SYSPRINT DD SYSOUT=*
//INPUT DD DSN=JRT.MSTRTAB.DATA,DISP=SHR
//OUTPUT DD DSN=MTAB.VSAM.MSTRTAB,DISP=SHR,
// AMP=('AMORG,BUFND=200,BUFNI=50')
//SYSIN DD *
REPRO -
INFILE(INPUT) -
OUTFILE(OUTPUT)
/*
//
Load Dummy records to a File for CICS
//LOADVSAM JOB (7728,JRTT),'LOAD DUMMY REC',MSGCLASS=K
//CR18 EXEC PGM=IEBDG
//SYSPRINT DD SYSOUT=K
//OUT018 DD DSN=&&D018,DISP=(NEW,PASS),UNIT=SYSDA,
// SPACE=(TRK,(1)),DCB=(RECFM=F,LRECL=18,BLKSIZE=18)
//SYSIN DD *
DSD OUTPUT=(OUT018)
FD NAME=FIELD1,LENGTH=18,FILL=X'00'
CREATE QUANTITY=1,NAME=(FIELD1)
//CR21 EXEC PGM=IEBDG
//SYSPRINT DD SYSOUT=K
//OUT021 DD DSN=&&D021,DISP=(NEW,PASS),UNIT=SYSDA,
// SPACE=(TRK,(1)),DCB=(RECFM=F,LRECL=21,BLKSIZE=21)
//SYSIN DD *
DSD OUTPUT=(OUT021)
FD NAME=FIELD1,LENGTH=21,FILL=X'00'
CREATE QUANTITY=1,NAME=(FIELD1)
//CR240 EXEC PGM=IEBDG
//SYSPRINT DD SYSOUT=K
//OUT240 DD DSN=&&D240,DISP=(NEW,PASS),UNIT=SYSDA,
// SPACE=(TRK,(1)),DCB=(RECFM=F,LRECL=240,BLKSIZE=240)
//SYSIN DD *
DSD OUTPUT=(OUT240)
FD NAME=FIELD1,LENGTH=240,FILL=X'00'
CREATE QUANTITY=1,NAME=(FIELD1)
//LDT02 EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//INPUT DD DSN=&&D018,DISP=(OLD,PASS)
//OUTPUT DD DSN=NETR.XMFKDT02,DISP=SHR
//SYSIN DD *
REPRO -
INFILE(INPUT) -
REUSE -
OUTFILE(OUTPUT)
//LDT08 EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//INPUT DD DSN=&&D021,DISP=(OLD,PASS)
//OUTPUT DD DSN=NETR.XMFKDT08,DISP=SHR
//SYSIN DD *
REPRO -
INFILE(INPUT) -
REUSE -
OUTFILE(OUTPUT)
//LD004 EXEC PGM=IDCAMS,REGION=4096K
//SYSPRINT DD SYSOUT=*
//INPUT DD DSN=&&D240,DISP=(OLD,PASS)
//OUTPUT DD DSN=NETR.XMFKD004,DISP=SHR
//SYSIN DD *
REPRO -
INFILE(INPUT) -
REUSE -
OUTFILE(OUTPUT)
//
Define a File (Cluster)
//DEFVSAM JOB (7728,JRTS),'VSAM CLUSTER',MSGCLASS=K
//STEP01 EXEC PGM=IDCAMS,REGION=1024K
//SYSPRINT DD SYSOUT=*
//VOL1 DD UNIT=(3380,8),DISP=SHR,VOL=SER=(MSLRES,MSLCAT,
// MSLDLB,MSLD03,MSLSPL,MSLE01,MSLE02,MSLE03)
// DD UNIT=(3350,8),DISP=SHR,VOL=SER=(335009,335010,
// 335011,335012,335013,335014,335015,335016)
//SYSIN DD *
DELETE (NETRON.TRAIN.FCI10) -
CLUSTER -
FILE(VOL1) -
CATALOG(CATALOG.MSL.MASTER)
/* */
IF LASTCC = 8 -
THEN -
SET MAXCC=0
/* */
DEFINE CLUSTER( -
NAME(NETRON.TRAIN.FCI10) -
VOLUMES(MSLE01) -
FILE(VOL1) -
INDEXED -
IMBED -
REPLICATE -
KEYS(07 00) -
OWNER(FCI10) -
RECORDSIZE(0300 0300) -
FREESPACE(17 08) -
SHAREOPTIONS(2 3) -
SPANNED -
SPEED ) -
DATA( -
NAME(NETRON.TRAIN.FCI10.DATA) -
CONTROLINTERVALSIZE(8192) -
OWNER(FCI10) -
CYLINDERS(001 01) ) -
INDEX( -
NAME(NETRON.TRAIN.FCI10.INDEX) -
CONTROLINTERVALSIZE(4096) -
OWNER(FCI10) -
TRACKS(01 01) ) -
CATALOG(CATALOG.MSL.MASTER)
//STEP02 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//OUTPUT DD DSN=NETRON.TRAIN.FCI10,DISP=SHR
//INPUT DD DSN=JRT.FCI10,DISP=SHR
//SYSIN DD DSN=MSL.PDSLIB(IDCAMS05),DISP=SHR
//
Define and Build an Alternate Index
//FACT2000 JOB (3433,JRTS),'FACT AIX BLD',CLASS=C,COND=(1,LE),TIME=1439,
// MSGCLASS=K
//STEP01 EXEC PGM=IDCAMS,REGION=1024K
//SYSPRINT DD SYSOUT=*
//VOL1 DD UNIT=(3380,8),DISP=SHR,VOL=SER=(MSLRES,MSLCAT,
// MSLDLB,MSLD03,MSLSPL,MSLE01,MSLE02,MSLE03)
// DD UNIT=(3350,8),DISP=SHR,VOL=SER=(335009,335010,
// 335011,335012,335013,335014,335015,335016)
//SYSIN DD *
DELETE (FACT.POLICY.MASTER.NAME) -
ALTERNATEINDEX -
FILE(VOL1) -
CATALOG(CATALOG.PROD.VMSLE02)
/* */
IF LASTCC = 8 -
THEN -
SET MAXCC=0
/* */
DEFINE ALTERNATEINDEX( -
NAME(FACT.POLICY.MASTER.NAME) -
RELATE(FACT.POLICY.MASTER) -
VOLUMES(MSLE01) -
FILE(VOL1) -
IMBED -
REPLICATE -
KEYS(30 17) -
OWNER(F3401N) -
RECORDSIZE(70 8000) -
FREESPACE(15 08) -
REUSE -
SHAREOPTIONS(2 3) -
SPEED -
NONUNIQUEKEY -
UPGRADE ) -
DATA( -
NAME(FACT.POLICY.MASTER.NAME.DATA) -
CONTROLINTERVALSIZE(8192) -
OWNER(F3401N) -
CYLINDERS(120 010) ) -
INDEX( -
NAME(FACT.POLICY.MASTER.NAME.INDEX) -
CONTROLINTERVALSIZE(4096) -
OWNER(F3401N) -
CYLINDERS(03 01) ) -
CATALOG(CATALOG.PROD.VMSLE02)
DEFINE PATH( -
NAME(FACT.POLICY.MASTER.NAME.PATH) -
PATHENTRY(FACT.POLICY.MASTER.NAME) -
FILE(VOL1) -
OWNER(F3401N) ) -
CATALOG(CATALOG.PROD.VMSLE02)
//STEP02 EXEC PGM=IDCAMS,TIME=1439
//SYSPRINT DD SYSOUT=K
//AMSDUMP DD SYSOUT=K
//AIXDD DD DSN=FACT.POLICY.MASTER.NAME,DISP=OLD,
// AMP=('AMORG','BUFND=30','BUFNI=4')
//BASEDD DD DSN=FACT.POLICY.MASTER,DISP=OLD,
// AMP=('AMORG','BUFND=30','BUFNI=4')
//IDCUT1 DD DSN=VSAM.SORT.WORK.ONE,DISP=OLD,AMP='AMORG',
// VOL=SER=335003,UNIT=SYSDA
//IDCUT2 DD DSN=VSAM.SORT.WORK.TWO,DISP=OLD,AMP='AMORG',
// VOL=SER=335003,UNIT=SYSDA
//SYSIN DD *
BLDINDEX INFILE(BASEDD) -
OUTFILE(AIXDD) -
EXTERNALSORT -
CATALOG(VSAM.MSTRCTLG/VSAMTECH)
//