In this section: |
The Adapter for CA-DATACOM/DB operates in the z/OS and USS environments and issues standard DATACOM calls for record retrieval. The adapter uses DATACOM Boolean selection capabilities, enabling it to retrieve only records that satisfy a request. This reduces the number of I/Os involved in data retrieval.
Prior to configuring the Adapter for DATACOM/DB using the Web Console, you must edit the ISTART JCL that is used to initiate the server by allocating the DATACOM.CAILIB and DATACOM.CUSLIB libraries to the server STEPLIB.
Note: If user requirement tables (URTs) are kept in a library other than CUSLIB, you may need to add an additional library to STEPLIB. For details about URTs, see Controlling Data Access With a User Requirements Table.
As part of your environment preparation, you must also create the AUTOURT User Table that is required to create a synonym.
A User Requirements Table contains all the tables that an application can access. This is the DATACOM table that is used to create a synonym. For the DATACOM data dictionary, the table is called AUTOURT. You must use the jcl that is shipped with the product to create AUTOURT.
An example of JCL that creates a AUTOURT is located in HOME.DATA in the member GENAUTO1 and GENAUTO2. For your convenience, the sample code is provided in this documentation.
Run GENAUTO1 followed by GENAUTO2:
//GENAUTO1 JOB 'PROG',MSGCLASS=X,CLASS=S
//*************************************************************
//* NAME: GENAUTO1
//*
//* FUNCTION: STEP1 IN CREATING DATADICTIONARY URT
//* NEEDED FOR OUR DATACOM ADAPTER TO CREATE SYNONYMS.
//* DO NOT CHANGE ANY OF THE ENTRIES FOR THE DBURTBL
//* SUBSTITUTIONS:-CHANGE "DATACOM.CAIMAC" TO THE NAME OF YOUR
//* DATACOM MACRO LIBRARY.
//* -CHANGE SYSLMOD TO LIBRARY WHERE YOU ARE GOING
//* KEEP URTS.
//*************************************************************
//ASMBL EXEC PGM=ASMA90,PARM='OBJECT,NODECK,LIST',REGION=1024K
//SYSLIB DD DSN=DATACOM.CAIMAC,DISP=SHR <==CHANGE
// DD DSN=SYS1.MACLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DSN=&&OBJPASS,UNIT=SYSDA,
// SPACE=(TRK,10),DISP=(NEW,PASS)
//SYSUT1 DD DSN=&&SYSUT1,UNIT=SYSDA,SPACE=(1700,(600,100))
//SYSUT2 DD DSN=&&SYSUT2,UNIT=SYSDA,SPACE=(1700,(300,50))
//SYSUT3 DD DSN=&&SYSUT3,UNIT=SYSDA,SPACE=(1700,(300,50))
//SYSPUNCH DD DUMMY
//SYSIN DD *
DBURSTR X
ABEND=YES, X
MULTUSE=YES, X
PRTY=7
DBURTBL X TBLNAM=FIL, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=FLD, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=KEY, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=REL, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=AGR, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=ALS, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=ARA, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=ATZ, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=BAS, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=DVW, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=ELM, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=HSD, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=JOB, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=KWC, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=LIB, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=MEM, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=MOD, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=NOD, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=PER, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=PGM, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=PLN, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=PNL, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=PRT, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=RPT, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=STM, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=STP, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X TBLNAM=SYS, X DBID=002, X SYNONYM=NO, X ELMCHG=NO, X SEQBUFS=2, X UPDATE=YES
DBURTBL X
TBLNAM=TXT, X
DBID=002, X
SYNONYM=NO, X
ELMCHG=NO, X
SEQBUFS=2, X
UPDATE=YES
DBUREND X
USRINFO=DATA DICTIONARY URT
END
/*
//LINKEDIT EXEC PGM=IEWL,PARM='LET,NORENT,NCAL,LIST,MAP,SIZE=1024K'
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(10,1))
//DBNTRY DD DISP=(OLD,DELETE),DSN=&&OBJPASS
//SYSLMOD DD DSN=HLQ.URTLIB,DISP=SHR <==CHANGE
//SYSLIN DD *
INCLUDE DBNTRY
NAME AUTOURT1(R)
/*
//GENAUTO2 JOB 'PROG',MSGCLASS=X,CLASS=S
//*************************************************************
//* NAME: GENAUTO2
//*
//* FUNCTION: STEP2 IN CREATING THE DATA DICTINONARY URT
//*
//* SUBSTITUTIONS:-CHANGE "DATACOM.CAIMAC" TO THE NAME OF YOUR
//* DATACOM MACRO LIBRARY.
//* -CHANGE //SYSIN TO POINT TO HOME.DATA
//* -CHANGE //DATAMOD TO HLQ.HOME.DATA LIBRARY
//* -CHANGE SYSLMOD TO LIBRARY WHERE YOU ARE GOING
//* KEEP URTS.
//*************************************************************
//ASMBL1 EXEC PGM=ASMA90,PARM='OBJECT,NODECK,LIST',REGION=1024K
//SYSLIB DD DSN=DATACOM.CAIMAC,DISP=SHR <==CHANGE
// DD DSN=SYS1.MACLIB,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSLIN DD DSN=&&OBJPASS1,UNIT=SYSDA,
// SPACE=(TRK,10),DISP=(NEW,PASS)
//SYSUT1 DD DSN=&&SYSUT1,UNIT=SYSDA,SPACE=(1700,(600,100))
//SYSUT2 DD DSN=&&SYSUT2,UNIT=SYSDA,SPACE=(1700,(300,50))
//SYSUT3 DD DSN=&&SYSUT3,UNIT=SYSDA,SPACE=(1700,(300,50))
//SYSPUNCH DD DUMMY
//SYSIN DD *
DBURINF URTABLE=LOAD,OPEN=USER,USRNTRY=USNTRY, X
LOADNAM=AUTOURT1
DBUREND USRINFO=DATA DICTIONARY URT
END
/* //ASMBL2 EXEC PGM=ASMA90,PARM='OBJECT,NODECK,LIST',REGION=1024K //SYSLIB DD DSN=DATACOM.CAIMAC,DISP=SHR <==CHANGE // DD DSN=SYS1.MACLIB,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=&&OBJPASS2,UNIT=SYSDA, // SPACE=(TRK,10),DISP=(NEW,PASS) //SYSUT1 DD DSN=&&SYSUT1,UNIT=SYSDA,SPACE=(1700,(600,100)) //SYSUT2 DD DSN=&&SYSUT2,UNIT=SYSDA,SPACE=(1700,(300,50)) //SYSUT3 DD DSN=&&SYSUT3,UNIT=SYSDA,SPACE=(1700,(300,50)) //SYSPUNCH DD DUMMY //SYSIN DD DISP=SHR,DSN=HLQ.HOME.DATA(USNTRY) <==CHANGE //* //LINKEDIT EXEC PGM=IEWL,PARM='LET,NORENT,NCAL,LIST,MAP,SIZE=1024K' //SYSPRINT DD SYSOUT=* //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(1,1)) //DATAMOD DD DISP=(OLD,DELETE),DSN=&&OBJPASS2 //DBNTRY DD DISP=(OLD,DELETE),DSN=&&OBJPASS1 //SYSLMOD DD DSN=HLQ.URTLIB,DISP=SHR <==CHANGE
//SYSLIN DD *
INCLUDE DATAMOD
INCLUDE DBNTRY
ENTRY USNTRY
NAME AUTOURT(R)
/*
iWay Software |