zOs/JCL/QZT01
$#:
$** wsh script fuer CopyArchivierungs Job QZT10??P
rz = RQ2
dbSys = DBOF
ctrlM = 1
usePlex = 1 $** 1=plex naming convention, 0=rz
rzC =- iiRz2C($rz)
rzP =- iiRz2P($rz)
dbC =- iidbSys2C($dbSys)
m7 = QZT10$rzP$dbC
j7 =- if($usePlex, QZT100$dbC, $m7)
$;
>. fEdit('dsn.source.tecSv.jcl'$-usePlex'('$-m7'P) ::f')
@/jcl/
$= rzAkt =- if($rz=RZ1 | $rz = RZ4, $rz, RZ2)'AKT'
if $ctrlM then $@[
$=cJob= %%JOBNAME
$=cSpc2= %%#SPC2
$=cDbSys = %%SUBSYS
$=cRZ = RZ%%RZ
$] else $@[
$=cJob=${j7}P
$=cSpc2= (CYL,(15,75),RLSE)
$=cDbSys = $dbSys
$=cRZ = $rz
$]
$@=[
//${j7}P JOB (PD00,KE50,,SP00000000),
// 'DB2 CMD',
// MSGCLASS=E,
// SCHENV=$dbSys
$]
if $ctrlM then $@=[
//*OMS NET=%%GROUP
//**CONTROL-M-JOB
//* %%GLOBAL GLOBAL
//* %%INCLIB PCL.U0000.P0.RZ2AKT.PERM.@007.JVA %%INCMEM JOBLRZ2P
//*MAIN CLASS=P2
//* %%SET %%SUBSYS = $dbSys
$] else $@=[
$]
$@=[
//*
//* Copy Archivierung fuer $rz/$dbSys
//*
//*------ allocate DSNs + tso fuer Spezielles -----------------------
//P02 EXEC PGM=IKJEFT01,DYNAMNBR=20
//SYSEXEC DD DSN=DSN.DB2.EXEC,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//DDENV DD *
$rz $dbSys COPYARC ${j7}P
//SYSTSIN DD DISP=SHR,DSN=$dbSys.DBAA.LCTL(${m7}0)
//DDOUT DD DSN=DSN.ABLF.TECSV.$dbSys.COPYARC.#DT#,
// DISP=(NEW,CATLG),MGMTCLAS=COM#E012
//TST DD DSN=DSN.$cJob.TST,
// DISP=(MOD,CATLG),
// MGMTCLAS=COM#A092,
// SPACE=$cSpc2,
// RECFM=VB
//COPIES DD DSN=DSN.$cJob.COPIES,
// DISP=(MOD,CATLG),
// MGMTCLAS=COM#A092,
// SPACE=$cSpc2,
// RECFM=VB
//ALTER DD DSN=DSN.$cJob.ALTER,
// DISP=(MOD,CATLG),
// MGMTCLAS=COM#A092,
// SPACE=$cSpc2,
// RECFM=FB,LRECL=80
//ALOUT DD DSN=DSN.$cJob.ALOUT,
// DISP=(MOD,CATLG),
// MGMTCLAS=COM#A092,
// SPACE=$cSpc2,
// RECFM=VBA,LRECL=121
//*
// IF P02.RC = 0 THEN
//*
//*------ select from sysIbm.sysCopy ---------------------------------
//P03 EXEC PGM=IKJEFT01,
// DYNAMNBR=200
//SYSTSIN DD *
DSN SYSTEM($cDbSys)
RUN PROGRAM(DSNTIAUL) PARMS('SQL')
END
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTERM DD DUMMY
//SYSPUNCH DD SYSOUT=*
//SYSIN DD DSN=$cDbSys.DBAA.LCTL(${m7}1),DISP=SHR
//SYSREC00 DD DSN=DSN.$cJob.TST,DISP=OLD
//SYSREC01 DD DSN=DSN.$cJob.COPIES,DISP=OLD
// ENDIF
//*
// IF P03.RC <= 4 THEN
//*
//*------ generate alter statements ----------------------------------
//P04 EXEC PGM=IKJEFT01,
// DYNAMNBR=200,
// PARM=('%DB2COARC $cDbSys GEN')
//SYSIN DD DUMMY
//SYSTSIN DD DUMMY
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTERM DD DUMMY
//SYSPROC DD DSN=DSN.DB2.EXEC,DISP=SHR
//TST DD DSN=*.P02.TST,DISP=SHR
//COPIES DD DSN=*.P02.COPIES,DISP=SHR
//ALTER DD DSN=*.P02.ALTER,DISP=OLD
// ENDIF
//*
// IF P04.RC = 0 THEN
//*
//*------ execute alter statements -----------------------------------
//P05 EXEC PGM=IDCAMS
//SYSPRINT DD DSN=*.P02.ALOUT,DISP=OLD
//CEEDUMP DD SYSOUT=*
//SYSABEND DD SYSOUT=*
//SYSIN DD DSN=*.P02.ALTER,DISP=SHR
// ENDIF
//*
// IF P05.ABEND OR P05.RUN THEN
//*
//*------ copy sysPrint to sysOut ------------------------------------
//P06 EXEC PGM=ICEGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=*.P02.ALOUT,DISP=SHR
//SYSUT2 DD SYSOUT=*
// ENDIF
//*
// IF P05.RUN THEN
//*
//*------ check alter's and update table -----------------------------
//P07 EXEC PGM=IKJEFT01,
// DYNAMNBR=200,
// PARM=('%DB2COARC $cDbSys check')
//SYSIN DD DUMMY
//SYSTSIN DD DUMMY
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTERM DD DUMMY
//SYSPROC DD DSN=DSN.DB2.EXEC,DISP=SHR
//TST DD DSN=*.P02.TST,DISP=SHR
//ALOUT DD DSN=*.P02.ALOUT,DISP=SHR
// ENDIF
$]
$/jcl/
$#out 20141125 13:40:28
$#out 20141125 13:39:46
$#out 20141125 13:36:55
$#out 20141125 13:36:46
$#out 20141125 13:36:38
$#out 20141125 13:36:30
$#out 20141125 13:33:35
$#out 20141125 13:32:22