DSNTEJ7

CREATES THE FOLLOWING OBJECTS FOR THE Db2 LOB SAMPLE - DSN8!!0.

Start of change
//*********************************************************************
     //*  NAME = DSNTEJ7
     //*
     //*  DESCRIPTIVE NAME = DB2 SAMPLE APPLICATION
     //*                     PHASE 7 (LOCAL SITE ONLY)
     //*
     //*    Licensed Materials - Property of IBM
     //*    5698-DB2
     //*    COPYRIGHT IBM CORP 1982, 2022
     //*
     //*    STATUS = Version 13
     //*
     //*  FUNCTION = CREATES THE FOLLOWING OBJECTS FOR THE DB2 LOB SAMPLE
     //*             - DSN8!!0.EMP_PHOTO_RESUME: DB2 SAMPLE LOB TABLE
     //*               - EMPNO     : EMPLOYEE SERIAL NO. (CHAR(6))
     //*               - EMP_ROWID : ROWID: REQUIRED FOR LOB TABLES
     //*               - PSEG_PHOTO: EMP. PHOTO IN PSEG FORMAT (BLOB 500K)
     //*               - BMP_PHOTO : EMP. PHOTO IN BMP FORMAT (BLOB 100K)
     //*               - RESUME    : EMP. RESUME (CLOB 5K)
     //*               - RESUME    : EMP. RESUME (CLOB 5K)
     //*
     //*             - DSN8S!!B: BASE TABLESPACE FOR EMP_PHOTO_RESUME TABLE
     //*             - DSN8S!!L: AUXILIARY TABLESPACE FOR PSEG_PHOTO COLUMN
     //*             - DSN8S!!M: AUXILIARY TABLESPACE FOR BMP_PHOTO COLUMN
     //*             - DSN8S!!N: AUXILIARY TABLESPACE FOR RESUME COLUMN
     //*
     //*             - DSN8D!!L: DATABASE FOR SAMPLE LOB TABLESPACES AND
     //*                         TABLES
     //*
     //*             THIS JCL ALSO INVOKES THE DB2 LOAD UTILITY TO POPULATE
     //*             THE TABLE.
     //*
     //*  NOTICE =
     //*    THIS SAMPLE JOB USES DB2 UTILITIES. SOME UTILITY FUNCTIONS ARE
     //*    ELEMENTS OF SEPARATELY ORDERABLE PRODUCTS.  SUCCESSFUL USE OF
     //*    A PARTICULAR SAMPLE JOB MAY BE DEPENDENT UPON THE OPTIONAL
     //*    PRODUCT BEING LICENSED AND INSTALLED IN YOUR ENVIRONMENT.
     //*
     //*  CHANGE ACTIVITY =
     //*    10/20/2012 Create ALIASes instead of SYNONYMs     N0102 / 163503
     //*    11/07/2012 Add SET CURRENT SQLID           dn1651_inst1 / dn1651
     //*    05/17/2013 FIX COPYRIGHT STATEMENT                 49779_077_724
     //*    02/15/2016 Long data set names                           PI42601
     //*    08/21/2018 Tolerate creation of deprecated TSs   s81673 / t81374
     //*    12/01/2021 Remove tolerance for deprecated TSs   e6837  / s15746
     //*
     //*********************************************************************
     //JOBLIB   DD DSN=DSN!!0.SDSNEXIT,DISP=SHR
     //         DD DSN=DSN!!0.SDSNLOAD,DISP=SHR
     //*
     //*        STEP  1: DROP SAMPLE LOB OBJECTS
     //*
     //PH07S01 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
     //SYSUT2   DD  DSN=DSN!!0.DSNTEJ7.LOBLOAD,
     //             DISP=(MOD,DELETE),
     //             UNIT=SYSDA,SPACE=(TRK,0)
     //SYSTSPRT DD  SYSOUT=*
     //SYSTSIN  DD  *
      DSN SYSTEM(DSN)
      RUN PROGRAM(DSNTIAD)          -
          PLAN(DSNTIA!!)            -
          LIB('DSN!!0.RUNLIB.LOAD') -
          PARM('RC0')
     //SYSPRINT DD  SYSOUT=*
     //SYSUDUMP DD  SYSOUT=*
     //SYSIN    DD  *
                SET CURRENT SQLID = 'SYSADM';
     
                    DROP DATABASE  DSN8D!!L;
     
     //*
     //*        STEP  2: CREATE SAMPLE LOB OBJECTS
     //*
     //PH07S02 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
     //SYSTSPRT DD  SYSOUT=*
     //SYSTSIN  DD  *
      DSN SYSTEM(DSN)
      RUN PROGRAM(DSNTIAD)          -
          PLAN(DSNTIA!!)            -
          LIB('DSN!!0.RUNLIB.LOAD')
     //SYSPRINT DD  SYSOUT=*
     //SYSUDUMP DD  SYSOUT=*
     //SYSIN    DD  *
                SET CURRENT SQLID = 'SYSADM';
     
                  CREATE DATABASE  DSN8D!!L
                         STOGROUP  DSN8G!!0
                       BUFFERPOOL  BP0
                            CCSID  EBCDIC;
     
                CREATE TABLESPACE  DSN8S!!B
                               IN  DSN8D!!L
                   USING STOGROUP  DSN8G!!0
                            ERASE  NO
                         LOCKSIZE  PAGE
                          LOCKMAX  SYSTEM
                       BUFFERPOOL  BP0
                            CLOSE  NO
                            CCSID  EBCDIC
                    MAXPARTITIONS  254;
     
                     CREATE TABLE  DSN8!!0.EMP_PHOTO_RESUME
                     (      EMPNO  CHAR( 06 )   NOT NULL,
                        EMP_ROWID  ROWID NOT NULL GENERATED ALWAYS,
                       PSEG_PHOTO  BLOB( 500K ),
                        BMP_PHOTO  BLOB( 100K ),
                           RESUME  CLOB(   5K ),
                      PRIMARY KEY  ( EMPNO ) )
                               IN  DSN8D!!L.DSN8S!!B
                            CCSID  EBCDIC;
     
              CREATE UNIQUE INDEX  DSN8!!0.XEMP_PHOTO_RESUME
                               ON  DSN8!!0.EMP_PHOTO_RESUME
                     (      EMPNO  ASC )
                            USING  STOGROUP DSN8G!!0
                            ERASE  NO
                       BUFFERPOOL  BP0
                            CLOSE  NO;
     
     
            CREATE LOB TABLESPACE  DSN8S!!L
                               IN  DSN8D!!L
                              LOG  NO;
     
                 CREATE AUX TABLE  DSN8!!0.AUX_PSEG_PHOTO
                               IN  DSN8D!!L.DSN8S!!L
                           STORES  DSN8!!0.EMP_PHOTO_RESUME
                           COLUMN  PSEG_PHOTO
                             PART  1;
     
              CREATE UNIQUE INDEX  DSN8!!0.XAUX_PSEG_PHOTO
                               ON  DSN8!!0.AUX_PSEG_PHOTO;
     
     
            CREATE LOB TABLESPACE  DSN8S!!M
                               IN  DSN8D!!L
                              LOG  NO;
     
                 CREATE AUX TABLE  DSN8!!0.AUX_BMP_PHOTO
                               IN  DSN8D!!L.DSN8S!!M
                           STORES  DSN8!!0.EMP_PHOTO_RESUME
                           COLUMN  BMP_PHOTO
                             PART  1;
     
              CREATE UNIQUE INDEX  DSN8!!0.XAUX_BMP_PHOTO
                               ON  DSN8!!0.AUX_BMP_PHOTO;
     
     
            CREATE LOB TABLESPACE  DSN8S!!N
                               IN  DSN8D!!L
                              LOG  NO;
     
                 CREATE AUX TABLE  DSN8!!0.AUX_EMP_RESUME
                               IN  DSN8D!!L.DSN8S!!N
                           STORES  DSN8!!0.EMP_PHOTO_RESUME
                           COLUMN  RESUME
                             PART  1;
     
              CREATE UNIQUE INDEX  DSN8!!0.XAUX_EMP_RESUME
                               ON  DSN8!!0.AUX_EMP_RESUME;
     
     
       COMMIT;
     //*
     //*        STEP  3: CREATE ALIASES, GRANT AUTHORITY
     //*
     //PH07S03 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
     //SYSTSPRT DD  SYSOUT=*
     //SYSTSIN  DD  *
      DSN SYSTEM(DSN)
      RUN PROGRAM(DSNTIAD)          -
          PLAN(DSNTIA!!)            -
          LIB('DSN!!0.RUNLIB.LOAD') -
          PARM('RC0')
     //SYSPRINT DD  SYSOUT=*
     //SYSUDUMP DD  SYSOUT=*
     //SYSIN    DD  *
       SET CURRENT SQLID = 'SYSADM';
     
           DROP ALIAS  EMP_PHOTO_RESUME;
       COMMIT;
     
         CREATE ALIAS  EMP_PHOTO_RESUME
                  FOR  DSN8!!0.EMP_PHOTO_RESUME;
     
                GRANT  USE
        OF TABLESPACE  DSN8D!!L.DSN8S!!B
                   TO  PUBLIC;
     
                GRANT  USE
        OF TABLESPACE  DSN8D!!L.DSN8S!!L
                   TO  PUBLIC;
     
                GRANT  USE
        OF TABLESPACE  DSN8D!!L.DSN8S!!M
                   TO  PUBLIC;
     
                GRANT  USE
        OF TABLESPACE  DSN8D!!L.DSN8S!!N
                   TO  PUBLIC;
     
                GRANT  DELETE, INSERT, SELECT, UPDATE
             ON TABLE  DSN8!!0.EMP_PHOTO_RESUME
                   TO  PUBLIC;
     //*
     //*        STEP  4: MAKE A COPY OF THE LOAD STATEMENT
     //*
     //PH07S04 EXEC PGM=IEBGENER,COND=(4,LT)
     //SYSIN    DD  *
      GENERATE  MAXFLDS=9,MAXGPS=2,MAXLITS=150
     G1 RECORD  IDENT=(8,'        ',1),
                FIELD=(139,1,,1),                                  001-139
                FIELD=(29,'                             ',,140)    140-168
     //SYSPRINT DD  SYSOUT=*
     //SYSUT1   DD  DISP=SHR,
     //         DSN=DSN!!0.SDSNIVPD(DSN8LLOB)
     //SYSUT2   DD  DSN=DSN!!0.DSNTEJ7.LOBLOAD,
     //             DISP=(,CATLG,DELETE),
     //             UNIT=SYSDA,SPACE=(672,1),
     //             DCB=(RECFM=FB,LRECL=168,BLKSIZE=672)
     //*
     //*        STEP  5: TAILOR THE LOAD DATA FOR THE LOCAL SITE
     //*
     //PH07S05 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
     //SYSTSPRT DD  SYSOUT=*
     //SYSPRINT DD  SYSOUT=*
     //SYSUDUMP DD  SYSOUT=*
     //SYSTSIN  DD  *
       EDIT 'DSN!!0.DSNTEJ7.LOBLOAD' +
             TEXT OLD NONUM NORECOVER ASIS
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8P130)                             +
                    /DSN!!0.SDSNIVPD(DSN8P130)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8B130)                             +
                    /DSN!!0.SDSNIVPD(DSN8B130)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8R130)                             +
                    /DSN!!0.SDSNIVPD(DSN8R130)                             /
       CHANGE * 2   /DSN??0.SDSNIVPD(DSN8P140)                             +
                    /DSN!!0.SDSNIVPD(DSN8P140)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8B140)                             +
                    /DSN!!0.SDSNIVPD(DSN8B140)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8R140)                             +
                    /DSN!!0.SDSNIVPD(DSN8R140)                             /
       CHANGE * 2   /DSN??0.SDSNIVPD(DSN8P150)                             +
                    /DSN!!0.SDSNIVPD(DSN8P150)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8B150)                             +
                    /DSN!!0.SDSNIVPD(DSN8B150)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8R150)                             +
                    /DSN!!0.SDSNIVPD(DSN8R150)                             /
       CHANGE * 2   /DSN??0.SDSNIVPD(DSN8P190)                             +
                    /DSN!!0.SDSNIVPD(DSN8P190)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8B190)                             +
                    /DSN!!0.SDSNIVPD(DSN8B190)                             /
       CHANGE * 1   /DSN??0.SDSNIVPD(DSN8R190)                             +
                    /DSN!!0.SDSNIVPD(DSN8R190)                             /
       END SAVE
     //*
     //*        STEP  6: LOAD RESUME (CLOB) DATA INTO SAMPLE LOB TABLE
     //*
     //PH07S06 EXEC DSNUPROC,PARM='DSN,DSNTEX',COND=(4,LT)
     //SORTLIB  DD  DSN=SYS1.SORTLIB,DISP=SHR
     //SORTOUT  DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK01 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK02 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK03 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK04 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //DSNTRACE DD  SYSOUT=*
     //LOBDATA  DD DSN=DSN!!0.DSNTEJ7.LOBLOAD,DISP=SHR
     //SYSUT1   DD  UNIT=SYSDA,SPACE=(4000,(50,50),,,ROUND)
     //SYSIN    DD  *
     
      LOAD DATA INDDN(LOBDATA)
        REPLACE
           INTO TABLE DSN8!!0.EMP_PHOTO_RESUME
                (EMPNO      POSITION(1:6) CHAR(6),
                 PSEG_PHOTO POSITION(7)   CHAR(54) BLOBF,
                 BMP_PHOTO  POSITION(61)  CHAR(54) BLOBF,
                 RESUME     POSITION(115) CHAR(54) CLOBF)
     //*
     //*        STEP  7: PRODUCE STATISTICS FOR SAMPLE LOB TABLESPACES
     //*
     //PH07S07 EXEC DSNUPROC,PARM='DSN,DSNTEX',COND=(4,LT)
     //SORTLIB  DD  DSN=SYS1.SORTLIB,DISP=SHR
     //SORTOUT  DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK01 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK02 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK03 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //SORTWK04 DD  UNIT=SYSDA,SPACE=(4000,(20,20),,,ROUND)
     //DSNTRACE DD  SYSOUT=*
     //SYSUT1   DD  UNIT=SYSDA,SPACE=(4000,(50,50),,,ROUND)
     //SYSREC   DD  UNIT=SYSDA,SPACE=(4000,(200,200),,,ROUND)
     //SYSIN    DD  *
     
      RUNSTATS TABLESPACE DSN8D!!L.DSN8S!!B
              INDEX(ALL)
     
      RUNSTATS TABLESPACE DSN8D!!L.DSN8S!!L
              INDEX(ALL)
     
      RUNSTATS TABLESPACE DSN8D!!L.DSN8S!!M
              INDEX(ALL)
     
      RUNSTATS TABLESPACE DSN8D!!L.DSN8S!!N
              INDEX(ALL)
     /*
End of change