zOs/JCL/QZT10
$#:
$** wsh script fuer CopyArchivierungs Job QZT10??P
rz = RZX
dbSys = DE0G
ctrlM = 0
rzC =- iiRz2C($rz)
dbC =- iidbSys2C($dbSys)
j7 = QZT10$rzC$dbC
$;
$** $>. fEdit('dsn.source.tecSv.jcl('$-j7'P) ::f')
>. fEdit()
@/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 tecSv copyArc',
// MSGCLASS=T,CLASS=M1,
// SCHENV=$dbSys
$]
$@=[
//*
//* 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(${j7}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(${j7}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 20160805 21:48:22
$#out 20150429 09:50:48
$#out 20140508 09:31:11