DSNTEJ2H
This JCL prepares and executes the following.
//*
//* DB2 Sample Application
//* Phase 2
//* Sample XML application
//* IBM C/C++ for OS/390
//*
//* LICENSED MATERIALS - PROPERTY OF IBM
//* 5650-DB2
//* (C) COPYRIGHT 2006, 2016 IBM Corp.
//*
//* STATUS = Version 12
//*
//* Function =
//* This JCL prepares and executes the following:
//* * DSN8EDXR: Sample application to format and display an
//* XML record
//* * DSN8EDXU: Sample application to format and update an
//* existing XML record
//* * DSN8EDXI: Sample application to insert an XML record
//* * DSN8EDXD: Sample application to delete an XML record
//*
//* Pseudocode =
//* PH02HS01 Step Prepare DSN8EDXR
//* PH02HS02 Step Prepare DSN8EDXU
//* PH02HS03 Step Prepare DSN8EDXI
//* PH02HS04 Step Prepare DSN8EDXD
//* PH02HS05 Step Bind packages and plans for DSN8EDX*
//* PH02HS06 Step Execute DSN8EDXR
//* PH02HS07 Step Execute DSN8EDXI
//* PH02HS08 Step Execute DSN8EDXU
//* PH02HS09 Step Execute DSN8EDXD
//*
//* Dependencies =
//* (1) Run this job only after running job DSNTEJ1
//*
//* Notes =
//*
//* Change Activity =
//* 10/16/2013 Don't use prelinker by default PI13612 DM1812
//* 08/18/2014 Single-phase migration s21938_inst1 s21938
//*
//*********************************************************************
//*
//JOBLIB DD DISP=SHR,DSN=DSN!!0.SDSNEXIT
// DD DISP=SHR,DSN=DSN!!0.SDSNLOAD
// DD DISP=SHR,DSN=CEE.V!R!M!.SCEERUN
//*
//* Step 1: Prepare DSN8EDXR: Format and display an XML record
//*
//PH02HS01 EXEC DSNHC,MEM=DSN8EDXR,COND=(4,LT),
// PARM.PC=('HOST(C),CCSID(1047),MARGINS(1,72),STDSQL(NO)',
// SOURCE,XREF),
// PARM.C='SOURCE LIST MAR(1,72) LO RENT OPTFILE(DD:CCOPTS)',
// PARM.LKED='AMODE=31,RMODE=ANY,MAP,RENT,REUS,UPCASE'
//PC.DBRMLIB DD DSN=DSN!!0.DBRMLIB.DATA(DSN8EDXR),
// DISP=SHR
//PC.SYSLIB DD DSN=DSN!!0.SRCLIB.DATA,
// DISP=SHR
//PC.SYSIN DD DSN=DSN!!0.SDSNSAMP(DSN8EDXR),
// DISP=SHR
//LKED.SYSLMOD DD DSN=DSN!!0.RUNLIB.LOAD(DSN8EDXR),
// DISP=SHR
//LKED.SYSIN DD *
INCLUDE SYSLIB(DSNELI)
INCLUDE SYSLIB(DSNTIAR)
//*
//* Step 2: Prepare DSN8EDXI: Insert an XML record
//*
//PH02HS02 EXEC DSNHC,MEM=DSN8EDXI,COND=(4,LT),
// PARM.PC=('HOST(C),CCSID(1047),MARGINS(1,72),STDSQL(NO)',
// SOURCE,XREF),
// PARM.C='SOURCE LIST MAR(1,72) LO RENT OPTFILE(DD:CCOPTS)',
// PARM.LKED='AMODE=31,RMODE=ANY,MAP,RENT,REUS,UPCASE'
//PC.DBRMLIB DD DSN=DSN!!0.DBRMLIB.DATA(DSN8EDXI),
// DISP=SHR
//PC.SYSLIB DD DSN=DSN!!0.SRCLIB.DATA,
// DISP=SHR
//PC.SYSIN DD DSN=DSN!!0.SDSNSAMP(DSN8EDXI),
// DISP=SHR
//LKED.SYSLMOD DD DSN=DSN!!0.RUNLIB.LOAD(DSN8EDXI),
// DISP=SHR
//LKED.SYSIN DD *
INCLUDE SYSLIB(DSNELI)
INCLUDE SYSLIB(DSNTIAR)
//*
//* Step 3: Prepare DSN8EDXU: Update an XML record
//*
//PH02HS03 EXEC DSNHC,MEM=DSN8EDXU,COND=(4,LT),
// PARM.PC=('HOST(C),CCSID(1047),MARGINS(1,72),STDSQL(NO)',
// SOURCE,XREF),
// PARM.C='SOURCE LIST MAR(1,72) LO RENT OPTFILE(DD:CCOPTS)',
// PARM.LKED='AMODE=31,RMODE=ANY,MAP,RENT,REUS,UPCASE'
//PC.DBRMLIB DD DSN=DSN!!0.DBRMLIB.DATA(DSN8EDXU),
// DISP=SHR
//PC.SYSLIB DD DSN=DSN!!0.SRCLIB.DATA,
// DISP=SHR
//PC.SYSIN DD DSN=DSN!!0.SDSNSAMP(DSN8EDXU),
// DISP=SHR
//LKED.SYSLMOD DD DSN=DSN!!0.RUNLIB.LOAD(DSN8EDXU),
// DISP=SHR
//LKED.SYSIN DD *
INCLUDE SYSLIB(DSNELI)
INCLUDE SYSLIB(DSNTIAR)
//*
//* Step 4: Prepare DSN8EDXI: Delete an XML record
//*
//PH02HS04 EXEC DSNHC,MEM=DSN8EDXD,COND=(4,LT),
// PARM.PC=('HOST(C),CCSID(1047),MARGINS(1,72),STDSQL(NO)',
// SOURCE,XREF),
// PARM.C='SOURCE LIST MAR(1,72) LO RENT OPTFILE(DD:CCOPTS)',
// PARM.LKED='AMODE=31,RMODE=ANY,MAP,RENT,REUS,UPCASE'
//PC.DBRMLIB DD DSN=DSN!!0.DBRMLIB.DATA(DSN8EDXD),
// DISP=SHR
//PC.SYSLIB DD DSN=DSN!!0.SRCLIB.DATA,
// DISP=SHR
//PC.SYSIN DD DSN=DSN!!0.SDSNSAMP(DSN8EDXD),
// DISP=SHR
//LKED.SYSLMOD DD DSN=DSN!!0.RUNLIB.LOAD(DSN8EDXD),
// DISP=SHR
//LKED.SYSIN DD *
INCLUDE SYSLIB(DSNELI)
INCLUDE SYSLIB(DSNTIAR)
//*
//* Step 5: Bind packages and plans for DSN8EDX*
//*
//PH02HS05 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//DBRMLIB DD DISP=SHR,DSN=DSN!!0.DBRMLIB.DATA
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
BIND PACKAGE(DSN8ED!!) MEMBER(DSN8EDXR) APPLCOMPAT(V!!R1) +
ACT(REP) ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PLAN(DSN8EDXR) -
PKLIST(DSN8ED!!.DSN8EDXR) -
ACTION(REPLACE) RETAIN +
ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PACKAGE(DSN8ED!!) MEMBER(DSN8EDXI) APPLCOMPAT(V!!R1) +
ACT(REP) ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PLAN(DSN8EDXI) -
PKLIST(DSN8ED!!.DSN8EDXI) -
ACTION(REPLACE) RETAIN +
ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PACKAGE(DSN8ED!!) MEMBER(DSN8EDXU) APPLCOMPAT(V!!R1) +
ACT(REP) ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PLAN(DSN8EDXU) -
PKLIST(DSN8ED!!.DSN8EDXU) -
ACTION(REPLACE) RETAIN +
ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PACKAGE(DSN8ED!!) MEMBER(DSN8EDXD) APPLCOMPAT(V!!R1) +
ACT(REP) ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
BIND PLAN(DSN8EDXD) -
PKLIST(DSN8ED!!.DSN8EDXD) -
ACTION(REPLACE) RETAIN +
ISO(CS) CURRENTDATA(YES) ENCODING(EBCDIC)
RUN PROGRAM(DSNTIAD) PLAN(DSNTIA!!) -
LIB('DSN!!0.RUNLIB.LOAD')
END
//SYSIN DD *
SET CURRENT SQLID = 'SYSADM';
GRANT BIND, EXECUTE ON PLAN DSN8EDXR
TO PUBLIC;
GRANT BIND, EXECUTE ON PLAN DSN8EDXI
TO PUBLIC;
GRANT BIND, EXECUTE ON PLAN DSN8EDXU
TO PUBLIC;
GRANT BIND, EXECUTE ON PLAN DSN8EDXD
TO PUBLIC;
//*
//* Step 6: Execute DSN8EDXR
//*
//PH02HS06 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
RUN PROGRAM(DSN8EDXR) PLAN(DSN8EDXR) -
LIB('DSN!!0.RUNLIB.LOAD')
END
//PRODID DD *
100-100-01
//*
//* Step 7: Execute DSN8EDXI
//*
//PH02HS07 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
RUN PROGRAM(DSN8EDXI) PLAN(DSN8EDXI) -
LIB('DSN!!0.RUNLIB.LOAD')
END
//PRODDESC DD *
<product pid="100-102-01" xmlns="http://podemo.org">
<description>
<name>Shovel, Basic 22"</name>
<details>Bow Shovel, 22" wide, straight handle with D-Grip</details>
<price>9.9</price>
<weight>1 kg</weight>
<PromoPrice> 2</PromoPrice>
</description>
</product>
//*
//* Step 8: Execute DSN8EDXU
//*
//PH02HS08 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
RUN PROGRAM(DSN8EDXU) PLAN(DSN8EDXU) -
LIB('DSN!!0.RUNLIB.LOAD')
END
//PRODID DD *
100-100-01
//DESCUPDT DD *
<price>11.99</price>
//*
//* Step 9: Execute DSN8EDXD
//*
//PH02HS09 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT)
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(DSN)
RUN PROGRAM(DSN8EDXD) PLAN(DSN8EDXD) -
LIB('DSN!!0.RUNLIB.LOAD')
END
//PRODID DD *
100-100-01
/*