zOs/REXX/WSHTUT08

$#%
>. fEdit()
= dbSys = DP4G
= util  = $copy $runstats

dbTs  DGDB9998  A976
  ts            A977
db    DA540769
  ts            S976
dbTs  DA540769  S975

if  ${?woDb} then
    finish

$proc $@/db/                            $** default db ----------------
    $arg svDb
$/db/

$proc $@/ts/                            $** add ts --------------------
    $arg aTs
    $@% dbTs $svDb $aTs
$/ts/

$proc $@/dbTs/                          $** add db ts -----------------
    $arg aDb aTs rest
    if \ ${?woDb} then $@[              $** first call create jobHeader
        $@job
        $@% step $aDb
    $] else  if $woDb <> $aDb then $@[  $** finish old DB start new DB
        $@finish
        $@% step $aDb
    $]
    t = '    INCLUDE TABLESPACE' $aDb'.'$aTs
    $$- t                               $** add to list lTs
    call jWrite $lPa, t 'PARTLEVEL'     $** add to list lPa
$/dbTs/

$proc $@:/job/                          $** job header ----------------
stepNo = 0
jobName = A540769W
lPa =- jBuf()
@<~wk.jcl(jc)
$/job/

$proc $@=/step/                         $** jcl utility step ----------
    $arg svDb
    $arg woDb
    $= stepNo =- right($stepNo + 1, 3, 0)
    $@ call jOpen $lPa, '>'
//*--- for db $woDb -----------------------------------------------
//UTI$stepNo EXEC PGM=DSNUTILB,PARM='$dbSys,$jobName.UTILS'
//SYSPRINT   DD SYSOUT=*
//UTPRINT    DD SYSOUT=*
//SYSUDUMP   DD SYSOUT=*
//SYSTEMPL   DD DSN=$dbSys.DBAA.LISTDEF(TEMPL),DISP=SHR
//SYSIN      DD *
OPTIONS EVENT(ITEMERROR, SKIP)
LISTDEF LTS
$/step/

$proc $@=/finish/                       $** finish current step -------
LISTDEF LPA
$@ call jClose $lPa
$@<.lPa
$do ux=1 to words($util)
     $@. word($util,ux)
$/finish/

$proc $@=/copy/                         $** copy ----------------------
COPY LIST LPA COPYDDN(TCOPYD)
    PARALLEL
    SHRLEVEL CHANGE
$/copy/

$proc $@=/runstats/                     $** runstats ------------------
RUNSTATS TABLESPACE LIST LTS
  SHRLEVEL CHANGE
  TABLE USE PROFILE
  TABLESAMPLE SYSTEM AUTO
$/runstats/
$#out                                              20161128 12:41:11