./ ADD NAME=$$$INDEX *---------------------------------------------------------------------* * Directory list of ABBYDALE.SAMPLE.JCL * *---------------------------------------------------------------------* | Member | Description | *---------------------------------------------------------------------* | $$$INDEX | This member. | *---------------------------------------------------------------------* | ASDELETE | JCL for running ASLDEL. | *---------------------------------------------------------------------* | ASLBR14 | Sample JCL for running ASLBR14(BSLBR14). | *---------------------------------------------------------------------* | BACKUP | JCL to backup a disk pack to 'tape'. | *---------------------------------------------------------------------* | DEFINEQ | JCL to define a local queue on a queue manager. | *---------------------------------------------------------------------* | DISKINIT | JCL to initialise a disk pack. | *---------------------------------------------------------------------* | EXPAND | JCL to expand a load module. This is useful if you need | | | to fix a program but don't have the source code. | *---------------------------------------------------------------------* | FORMAT4 | JCL to dump a disk pack VTOC | *---------------------------------------------------------------------* | FUZZY | JCL to take a fuzzy backup of a MQ queue. | *---------------------------------------------------------------------* | IEBUPDTE | JCL to rebuild an IEBUPDTE offloaded dataset. | *---------------------------------------------------------------------* | LISTQS | JCL to list all the parmenent queue on a queue manager. | *---------------------------------------------------------------------* | PUT2Q | JCL to load a queue with some text. | *---------------------------------------------------------------------* | QMGRBKUP | Jobstream to backup all the MQ objects of a queue | | | manager to a flat file. This can be used to rebuild a | | | queue manager from scratch. | *---------------------------------------------------------------------* | QMSTAT | JCL to run QMSTAT. This shows how to check on one MQ | | | subsystems and how to list all the defined subsystems. | *---------------------------------------------------------------------* | RESTORE | JCL to restore a dataset from a full pack backup. | *---------------------------------------------------------------------* | SEARCH | JCL to run a batch SRCHFOR to locate a string within | | | the dataset or datasets defined on the NEWDD DD card. | *---------------------------------------------------------------------* | USSTAB | JCL to assmeble a VTAM USS table. | *---------------------------------------------------------------------* | ©Copyright of Abbydale Systems LLC. | *---------------------------------------------------------------------* ./ ADD NAME=ASDELETE //ASLDEL JOB //********************************************************************* //* * //* This is a sample job for running ASLDEL * //* * //********************************************************************* //STEPDEL EXEC PGM=ASLDEL,PARM='RC=0,your.file.to.delete' //STEPLIB DD DISP=SHR,DSN=your.ASLDEL.load.library ./ ADD NAME=ASLBR14 //ASLBR14 JOB //********************************************************************* //* * //* This sample job shows how to run ASLBR14(BSLBR14) * //* * //* The first step will: * //* ignore the wait on the parm (due to the PRESYSIN) * //* Issue the message ASLUCVT1 * //* End with a condition code of 12 * //* * //********************************************************************* //STEP1 EXEC PGM=ASLBR14,PARM='WAIT=5,COND=12' //STEPLIB DD DISP=SHR,DSN=your.BSLBR14.load.library //PRESYSIN DD * ASLUCVT1 CREATE USERCVT //********************************************************************* //* * //* The second step will abend the job with a SOC3 * //* * //********************************************************************* //STEP2 EXEC PGM=ASLBR14,PARM='WAIT=0,ABEND=S0C3' //STEPLIB DD DISP=SHR,DSN=your.BSLBR14.load.library ./ ADD NAME=BACKUP //BACKUP JOB //******************************************************************** //* * //* This job will dump a full disk pack to 'tape' * //* * //******************************************************************** //DISKDUMP EXEC PGM=ADRDSSU,REGION=0M //SYSPRINT DD SYSOUT=* //DASD1 DD UNIT=SYSALLDA,DISP=SHR,VOL=SER=vvvvvv //TAPE1 DD DSN=vvvvvvv.BACKUP,DISP=(NEW,KEEP), // LABEL=(,SL),VOL=(,RETAIN,,SER=tttttt),UNIT=uuu //SYSIN DD * DUMP - INDD(DASD1) - OUTDD(TAPE1) - COMPRESS - ADMINISTRATOR - OPTIMIZE(4) //* ./ ADD NAME=DEFINEQ //DEFINEQ JOB //********************************************************************* //* * //* This job will define a local queue on the target qmgr * //* * //* Change mqhlq to the high level qualifier of your MQ libraries* //* Change qmgr to the target queue manager subsystem id * //* Change your.queue.name to the queue name you want ot define * //* * //* Reminder : Case counts! * //* * //********************************************************************* //DEFINEQ EXEC PGM=CSQUTIL,PARM='qmgr' //STEPLIB DD DISP=SHR,DSN=mqhlq.SCSQLOAD // DD DISP=SHR,DSN=mqhlq.SCSQANLE // DD DISP=SHR,DSN=mqhlq.SCSQAUTH //SYSPRINT DD SYSOUT=* //SYSIN DD * COMMAND DDNAME(INPUT) //INPUT DD * Note: Case is important for MQ Objects DEFINE QLOCAL(your.queue.name) LIKE(SYSTEM.DEFAULT.LOCAL.QUEUE) ./ ADD NAME=DISKINIT //INITPROD JOB //********************************************************************* //* * //* This job will initialise a disk pack. * //* * //* Replace vvvvvv with your new disk name * //* Replace nnn with the unit number where the disk resides * //* * //* The unit MUST be offline before running this job * //* * //********************************************************************* //ICKDSF EXEC PGM=ICKDSF //SYSPRINT DD SYSOUT=* //SYSIN DD * INIT NOVAL NOCHK NVFY PURGE VTOC(1,0,15) VOLID(vvvvvv) - IPLDD(IPLTXT) NOBOOTSTRAP UNIT(nnn) //IPLTXT DD DSN=SYS1.SAMPLIB(IEAIPL00),DISP=SHR ./ ADD NAME=EXPAND //EXPAND JOB //********************************************************************* //* * //* This job will expand a load module (in this case by 144 bytes) * //* * //* Replace pppppppp with your program to be expanded * //* * //********************************************************************* //STEP1 EXEC PGM=AMASPZAP //SYSPRINT DD SYSOUT=* OUTLIM=1000 //SYSLIB DD DISP=SHR,DSN=load.library.with.program //SYSIN DD * DUMPT pppppppp NAME pppppppp EXPAND pppppppp(144) ./ ADD NAME=FORMAT4 //FORMAT4 JOB //********************************************************************* //* * //* This job will dump the VTOC of a disk pack. * //* * //* Replace vvvvvv with the disk name and uuuu with the unit * //* * //********************************************************************* //STEP1 EXEC PGM=AMASPZAP //SYSLIB DD DSN=FORMAT4.DSCB,DISP=SHR,VOL=SER=vvvvvv,UNIT=uuuu //SYSPRINT DD SYSOUT=* //SYSIN DD * ABSDUMP ALL ./ ADD NAME=FUZZY //FUZZY JOB //********************************************************************* //* * //* This job will take a fuzzy backup of a queue * //* * //* Change mqhlq to the high level qualifier of your MQ libraries* //* Change qmgr to the target queue manager subsystem id * //* Change queue.to.backup to the queue you want to backup * //* Change backup.dataset.name to the name of the backup you * //* want to create along with where you want to put it! * //* * //* Reminder : Case counts! * //* * //********************************************************************* //********************************************************************* //* BACKUP - PERFORM FUZZY BACKUP OF QUEUE * //********************************************************************* //BACKUP EXEC PGM=CSQUTIL,PARM=('qmgr') //STEPLIB DD DISP=SHR,DSN=mqhlq.SCSQLOAD // DD DISP=SHR,DSN=mqhlq.SCSQANLE // DD DISP=SHR,DSN=mqhlq.SCSQAUTH //SYSPRINT DD SYSOUT=* //BACKUP DD DSN=backup.dataset.name, // DISP=(,CATLG,DELETE), // DCB=(RECFM=VBS,BLKSIZE=23200), // UNIT=unittype, <===Change accordingly // VOL=SER=vvvvvv, <===Change accordingly // SPACE=(CYL,(10,30),RLSE) <===Change accordingly //SYSIN DD * ALT QL(queue.to.backup) PUT(DISABLED) COPY Q(queue.to.backup) DDNAME(BACKUP) ALT QL(queue.to.backup) PUT(ENABLED) ./ ADD NAME=IEBUPDTE //IEBUPDTE JOB //********************************************************************* //* * //* This job will rebuild a PDS from an IEBUPDTE offload file. * //* * //* Replace the input and output dataset names with your files. * //* Replace vvvvvv with the target volume for the rebuilt PDS. * //* * //********************************************************************* //BUILD EXEC PGM=IEBUPDTE,PARM=NEW //SYSPRINT DD SYSOUT=* //SYSUT2 DD DISP=(,CATLG),UNIT=SYSALLDA,SPACE=(80,(5,1,4)), // DSN=your.output.dataset.to.create,VOL=SER=vvvvvv, // RECFM=FB,LRECL=80,BLKSIZE=0,DSORG=PO //SYSIN DD DISP=SHR,DSN=your.input.iebupdte.offload.file ./ ADD NAME=LISTQS //LISTQS JOB //********************************************************************* //* * //* This job will list all the permanent queus defined on the * //* target queue manager * //* * //* Change mqhlq to the high level qualifier of your MQ libraries* //* Change qmgr to the target queue manager subsystem id * //* Change target.queue to the queue you want to load * //* * //* Reminder : Case counts! * //* * //********************************************************************* //LISTQS EXEC PGM=CSQUTIL,PARM='qmgr' //STEPLIB DD DISP=SHR,DSN=mqhlq.SCSQLOAD // DD DISP=SHR,DSN=mqhlq.SCSQANLE // DD DISP=SHR,DSN=mqhlq.SCSQAUTH //SYSPRINT DD SYSOUT=* //SYSIN DD * COMMAND DDNAME(INPUT) MAKEDEF(OUTPUT) //INPUT DD * DISPLAY QUEUE(*) WHERE(DEFTYPE NE TEMPDYN) ALL //OUTPUT DD SYSOUT=* ./ ADD NAME=PUT2Q //PUT2Q JOB //********************************************************************* //* * //* This job will load a queue on a target queue manager * //* * //* Change mqhlq to the high level qualifier of your MQ libraries* //* Change qmgr to the target queue manager subsystem id * //* Change target.queue to the queue you want to load * //* * //* Reminder : Case counts! * //* * //********************************************************************* //LOADQ EXEC PGM=CSQUTIL,PARM='qmgr' //STEPLIB DD DISP=SHR,DSN=mqhlq.SCSQLOAD // DD DISP=SHR,DSN=mqhlq.SCSQANLE // DD DISP=SHR,DSN=mqhlq.SCSQAUTH //SYSPRINT DD SYSOUT=* //********************************************************************* //* * //* The INPUT DD card could also be a dataset * //* * //********************************************************************* //INPUT DD *,DCB=RECFM=VBS The Quick Brown Fox //SYSIN DD * Note: Case is important for MQ Objects LOAD QUEUE(target.queu) DDNAME(INPUT) ./ ADD NAME=QMGRBKUP //QMGRBKUP JOB //********************************************************************* //* * //* This job will backup all the MQ definitions from a queue * //* manager. These can then be used to rebuild a queue manager * //* from scratch. Replace 'qmgr' with the queue manager name and * //* vvvvvv with the volume for the backup. You should specify * //* the file name for backup dataset. * //* * //********************************************************************* //STEPBACK EXEC PGM=CSQUTIL,PARM='qmgr' //STEPLIB DD DSN=qmgr.SCSQAUTH,DISP=SHR // DD DSN=mqhlq.SCSQANLE,DISP=SHR // DD DSN=mqhlq.SCSQAUTH,DISP=SHR // DD DSN=lehlq.SCEERUN,DISP=SHR //SYSIN DD * COMMAND DDNAME(INPUT) MAKEDEF(OUTPUT) //INPUT DD * DISPLAY QUEUE(*) all DISPLAY STGCLASS(*) ALL DISPLAY NAMELIST(*) all DISPLAY PROCESS(*) all DISPLAY CHANNEL(*) all //OUTPUT DD DSN=backup.of.defs, // LRECL=80,BLKSIZE=0,RECFM=FB,VOL=SER=vvvvvv, // SPACE=(TRK,(15,10),RLSE),UNIT=SYSALLDA,DISP=(,CATLG) //SYSPRINT DD SYSOUT=* ./ ADD NAME=QMSTAT //QMSTAT JOB //********************************************************************* //* * //* This job will test the status of the MQ subsystem passed * //* as a parameter to the program. * //* * //* Condition code meanings: * //* * //* 0 - The MQ subsystem is currently active. * //* 4 - No parameter was passed and the subsystems have been listed. * //* 8 - The MQ subsystem is currently defined but inactive. * //* 12 - The MQ subsystem is undefined. * //* * //* as a parameter to the program. * //* * //********************************************************************* //CHEKQMGR EXEC PGM=QMSTAT,PARM='qmgr' //STEPLIB DD DISP=SHR,DSN=your.QMSTAT.load.library //********************************************************************* //* * //* List all the subsystems defined on the system * //* * //********************************************************************* //CHEKQMGR EXEC PGM=QMSTAT //STEPLIB DD DISP=SHR,DSN=your.QMSTAT.load.library ./ ADD NAME=RESTORE //RESTORE JOB //********************************************************************* //* * //* This job will restore a dataset from a full pack backup * //* * //* Make sure that you correctly define the tape information * //* Replace vvvvvv with the name of the target disk volume * //* This job can be used to rename the restore dataste * //* * //********************************************************************* //RESTDISK EXEC PGM=ADRDSSU,REGION=0M //SYSPRINT DD SYSOUT=* //DASD1 DD UNIT=SYSALLDA,DISP=SHR,VOL=SER=vvvvvV //TAPE1 DD DISP=SHR,DSN=tape.dataset, // LABEL=(1,SL),VOL=SER=tttttt,UNIT=uuu //SYSIN DD * RESTORE - INDDNAME(TAPE1) OUTDDNAME(DASD1) - DATASET(INCLUDE(dataset.to restore)) - RENAME(*.to.restore,*.new.name) CAT // ./ ADD NAME=SEARCH //SEARCH JOB //********************************************************************* //* * //* This job will search the libraries in the NEWDD concatenation* //* for the string defined in the SYSIN card * //* * //* Change the datasets on the NEWDD DD to the library, or * //* libraries to search. * //* Change 'find' to the string you want to find * //* * //********************************************************************* //SEARCH EXEC PGM=ISRSUPC,PARM=(SRCHCMP,'ANYC',NOSUMS,LMTO) //NEWDD DD DISP=SHR,DSN=dataset1 // DD DISP=SHR,DSN=dataset2 // DD DISP=SHR,DSN=dataset3 //OUTDD DD SYSOUT=* //SYSIN DD * SRCHFOR 'find' ./ ADD NAME=USSTAB //USSN JOB //********************************************************************* //* * //* This job assembles and links a VTAM USS table * //* * //********************************************************************* //ASM EXEC PGM=ASMA90,REGION=1024K,PARM='NODECK,OBJECT' //SYSPRINT DD SYSOUT=* //SYSLIB DD DISP=SHR,DSN=SYS1.MACLIB // DD DISP=SHR,DSN=SYS1.SISTMAC1 //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(20,5)) //SYSUT2 DD UNIT=SYSDA,SPACE=(CYL,(10,1)) //SYSUT3 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSUT4 DD UNIT=SYSDA,SPACE=(CYL,(2,1)) //SYSUT5 DD UNIT=SYSDA,SPACE=(CYL,(2,1)),DCB=SYS1.MACLIB, // DISP=(,PASS) //SYSLIN DD DSN=&&OBJ(USSN2),DISP=(,PASS), // SPACE=(CYL,(1,1,1)),UNIT=SYSDA //SYSIN DD DISP=SHR,DSN=input.daatset(member) //* //LKED EXEC PGM=HEWLH096,COND=(0,LT), // PARM=('SIZE=(1000K,100K),NCAL,XREF,LET,LIST') //SYSPRINT DD SYSOUT=* //SYSLMOD DD DISP=SHR,DSN=our.vtam.library //SYSUT1 DD UNIT=SYSDA,SPACE=(6160,(230,760)) //OBJECT DD DSN=*.ASM.SYSLIN,VOL=REF=*.ASM.SYSLIN,DISP=SHR //SYSLIN DD * INCLUDE OBJECT(member) NAME member(R) ./ ENDUP "REVIEW" PDS MEMBER OFFLOAD AT 16:11 ON 21-12-19