zOs/JCL/SNREODI

//A540769B  JOB (CP00,KE50)                                             00010001
//*MAIN CLASS=LOG
//DEL      EXEC PGM=IEFBR14                                             00020001
//DATE     DD DISP=(MOD,DELETE,DELETE),DSN=A540769.SNREODI.DATE
//DATE     EXEC PGM=IKJEFT01,DYNAMNBR=200,TIME=99                       00020001
//SYSTSIN  DD *
    DSN SYSTEM(DBAF)
   RUN PROGRAM(DSNTIAUL) PARMS('SQL')
//SYSIN      DD *
   SELECT CHAR('''' || CHAR(SN184DAV) || '''', 80) FROM OA1A.TSN184A1;
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTERM  DD DUMMY
//*
//REODIS EXEC PGM=DSNUTILB,TIME=1440,
//   PARM=(DBAF,'A540769B.REODI'),
//   REGION=0M
//DSSPRINT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//UTPRINT  DD SYSOUT=*
//SYSTEMPL DD DISP=SHR,DSN=DBAF.DBAA.LISTDEF(TEMPL)
//SYSIN DD *
-- TB OA1A.TSN110A1                  ts SN01A1A.A110A
-- t#Disc: DISCARDDN for Reorg will contain discarded records
TEMPLATE T#DISC   DSN('&SS..&DB..A110A.ARCHIVE.DISC.D&DATE.')
                  DATACLAS(ENN35) MGMTCLAS(COM#A032)
                  SPACE (100,10000) TRK

-- t#pun: PUNCHDDN fuer reorg unload
TEMPLATE T#PUN    DSN('&SS..&DB..A110A.ARCHIVE.PUNC.D&DATE.')
                  DATACLAS(NULL8) MGMTCLAS(COM#A032)
                  SPACE(1,10) TRK
     COPY TABLESPACE SN01A1A.A110A DSNUM ALL
           COPYDDN(TCOPYD) SHRLEVEL REFERENCE
     REORG TABLESPACE SN01A1A.A110A
         LOG NO
         SORTDATA
         COPYDDN(TCOPYD)
         SHRLEVEL REFERENCE
         UNLOAD CONTINUE
         WORKDDN(TSYUTD,TSOUTD)
         PUNCHDDN T#PUN
         SORTKEYS
         SORTDEVT DISK
         SORTNUM 160
         STATISTICS
           INDEX ALL
         REPORT NO
           UPDATE ALL
         UNLDDN    TSRECD
         DISCARDDN T#DISC
             DISCARD FROM TABLE OA1A.TSN110A1
             WHEN (
                   SN110REC IN ('T','P','D')
                   AND SN110BIS = '31.12.2999'
                   AND  SN110BIS <
//           DD DISP=SHR,DSN=A540769.SNREODI.DATE
//           DD *
                  )
//LOAD  EXEC PGM=DSNUTILB,TIME=1440,
//   PARM=(DBAF,'A540769B.LOAD'),
//   REGION=0M
//DSSPRINT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//UTPRINT  DD SYSOUT=*
//SYSTEMPL DD DISP=SHR,DSN=DBAF.DBAA.LISTDEF(TEMPL)
//SYSIN DD *
-- TB OA1A.TSN110A1                  ts SN01A1A.A110A
-- t#Disc: DISCARDDN for Reorg will contain discarded records
TEMPLATE T#DISC   DSN('&SS..&DB..A110A.ARCHIVE.DISC.D&DATE.')

     COPY TABLESPACE SN01A1A.A167A DSNUM ALL
           COPYDDN(TCOPYD) SHRLEVEL REFERENCE

     LOAD DATA INDDN T#DISC
         RESUME YES LOG NO
         SORTDEVT DISK
         SORTNUM 20
      EBCDIC  CCSID(00500,00000,00000)
      INTO TABLE "OA1P"."TSN167A1"
  ( .......... copy colums from punch file
    .......... DSN('&SS..&DB..A110A.ARCHIVE.PUNC.D&DATE.')
  )

     COPY TABLESPACE SN01A1A.A167A DSNUM ALL
           COPYDDN(TCOPYD) SHRLEVEL REFERENCE