Previous Topic: Schedule (PCB) Call ProcessingNext Topic: Operational Considerations


The CA IDMS DLI Transparency Program Definition Table

How the Program Definition Table is Created

The CA IDMS DLI Transparency program definition table is created from user-supplied input to the CA IDMS DLI Transparency program definition table compiler (IDMSDLTG). This compiler produces assembler source output which is then assembled and link edited into a CDMSLIB load library (z/OS) or core-image library (z/VSE).

The CA IDMS DLI Transparency program definition table load module (z/OS) or phase (z/VSE) must always have the name DLPDTAB. Each application program that is to have an IPSB automatically scheduled must have an entry in the table. The information in each entry is the same as in a region controller's parameter list, but the format is different.

The CA IDMS DLI Transparency program definition table can be thought of as an extension to the CA IDMS/DB program definition table. Before any program can be added to the CA IDMS DLI Transparency program definition table, it must already be in the CA IDMS/DB program definition table. (For this to be true, you must have defined the program to the CA IDMS/DB system with a system generation ADD PROGRAM statement.)

Syntax

►►─── MODify PROgram program-name ─┬─────────────────────────┬───────────────►
                                   └─ version is(=) nnnn ────┘

 ►─── IPSB name is(=) ipsb-name ─────────────────────────────────────────────►

 ►─┬─────────────┬───────────────────────────────────────────────────────────►
   ├─ TRACE ─────┤
   └─ NOTRACE ◄ ─┘

 ►─┬─────────────┬───────────────────────────────────────────────────────────►
   ├─ STAE ◄ ────┤
   └─ NOSTAE ────┘

 ►─┬────────────────────────────┬────────────────────────────────────────────►
   └─ NODENAME is(=) nodename ──┘

 ►─┬────────────────────────┬────────────────────────────────────────────────►
   └─ DBNAME is(=) dbname ──┘

 ►─┬────────────────────────────┬────────────────────────────────────────────►
   └─ DICTNODE is(=) dictnode ──┘

 ►─┬────────────────────────────┬────────────────────────────────────────────►◄
   └─ DICTNAME is(=) dictname ──┘

Parameters

program-name

Identifies the name of the application program (already defined to the system through a system generation ADD PROGRAM statement) to be modified to use CA IDMS DLI Transparency.

nnnn

Identifies the 1- to 4-digit version number that further qualifies the program.

ipsb-name

Identifies the name of the IPSB to be automatically scheduled for the program.

TRACE/NOTRACE

Indicates whether or not CA IDMS DLI Transparency will build and maintain an internal trace table for aid in debugging. NOTRACE is the default.

STAE/NOSTAE

Indicates whether or not CA IDMS DLI Transparency will trap program abnormal terminations and produce formatted information for aid in debugging. NOSTAE is the default.

NODENAME IS nodename

Specifies the nodename that will be used to bind the CA IDMS DLI Transparency run unit.

DBNAME IS dbname

Specifies the dbname that will be used to bind the CA IDMS DLI Transparency run unit.

DICTNODE IS nodename

Specifies the nodename for the dictionary that will be used to bind the CA IDMS DLI Transparency run unit.

DICTNAME IS dictname

Specifies the dictname that will be used to bind the CA IDMS DLI Transparency run unit.

The JCL necessary to execute the CA IDMS DLI Transparency program definition table compiler (IDMSDLTG) and to assemble and link edit the DLPDTAB output is shown below:

PROGRAM DEFINTION TABLE COMPILER

//DL  EXEC  PGM=IDMSDLTG
//STEPLIB DD  DSN=idms.loadlib,DISP=SHR
//SYSLST DD  SYSOUT=A,DCB=BLKSIZE=133
//SYSPCH DD  DSN=&&SYSPCH,UNIT=disk,SPACE=(4000,(100,50))
//              DCB=(RECFM=FB,LRECL=80,BLKSIZE=4000),DISP=(NEW,PASS)
//SYSIPT DD  *
pdt input statements
/*
//ASM  EXEC  PGM=ASMA90
//SYSPRINT DD  SYSOUT=A
//SYSLIB DD  DSN=yourHLQ.CAGJMAC,DISP=SHR
//SYSUT1 DD  UNIT=disk,SPACE=(cyl,(2,2))
//SYSUT2 DD  UNIT=disk,SPACE=(cyl,(2,2))
//SYSUT3 DD UNIT=disk,SPACE=(cyl,(2,2))
//SYSPUNCH DD DSN=&&PDTB,UNIT=disk,DISP=(NEW,PASS),
//    SPACE=(80,(400,40))
//SYSIN  DD  DSN=&&SYSPCH,DISP=(OLD,DELETE)
//LINK      EXEC  PGM=HEWL
//SYSPRINT      SYSOUT=A
//SYSLIN DD  DSN=&&PDTB,DISP=(OLD,DELETE)
//SYSUT1 DD  UNIT=disk,SPACE=(trk,(20,5))
//SYSLMOD DD  DSN=idms.loadlib(DLPDTAB),DISP=SHR

idms.loadlib

data set name of the CA IDMS/DB load library containing the subschema description and IDMSDLTG

cyl,(2,2)

space to be allocated in bytes per cylinders

disk

symbolic device type for the disk file

&&PDTB

temporary data set containing the output from the assembly step

yourHLQ.CAGJMAC

data set name of the macro library

&&SYSPCH

temporary data set containing the output from program definition table compiler (IDMSDLTG)

trk,(20,5)

space to be allocated in bytes per tracks

4000,(100,50)

space to be allocated in bytes per blocks

80,(400,40)

space to be allocated in bytes per blocks

DLPDTAB

required link edit module name in the SYSLMOD statement.