In this section: |
IMS offers the DBCTL (Database Control) facility for accessing online IMS databases. DBCTL provides a number of security, efficiency, and application control enhancements and is easy to implement.
This section includes the following topics:
The advantages of using DBCTL include the following:
In your JCL or CLIST, you can allocate ddname FOCPSB to a partitioned data set. Then, within your application, you can issue a SET command to select any member PSB from the data set
You also have the option of creating Access Files that identify the appropriate PSB for each Master File (see Creating FOCUS Descriptions). When you have Access Files, you do not have to issue a command to select a PSB, so the selection is transparent to your application.
DBCTL must have been installed as described in Installation Instructions.
The following diagram illustrates the relationship between FOCUS, the adapter, and IMS in the DBCTL environment:
Address Space |
Contains |
---|---|
1 |
|
2 |
|
To invoke the adapter interactively within the DBCTL environment, edit the following CLIST to conform to the standards at your site. In addition, add the IMS.RESLIB and the name of the PDS that contains the DRA Startup Table (load module DFSPZPxx, described in Installation Instructions) to the STEPLIB allocation in your TSO logon procedure. Note that the CLIST allocates the entire FOCPSB data set, not just one member:
PROC 0 CONTROL NOMSG FREE DDNAME(USERLIB ERRORS MASTER ACCESS FOCEXEC FOCPSB FOCLIB) ALLOC F(ERRORS) DA('prefix.ERRORS.DATA') SHR REUSE ALLOC F(USERLIB) DA('prefix.IMS.LOAD' + 'prefix.FUSELIB.LOAD') SHR REUSE ALLOC F(MASTER) DA('prefix.MASTER.DATA') SHR REUSE ALLOC F(ACCESS) DA('prefix.ACCESS.DATA') SHR REUSE ALLOC F(FOCEXEC) DA('prefix.FOCEXEC.DATA') SHR REUSE ALLOC F(FOCPSB) DA('prefix.FOCPSB.DATA') SHR REUSE ALLOC F(FOCLIB) DA('prefix.FOCLIB.LOAD') SHR REUSE CALL 'prefix.FOCLIB.LOAD(FOCUS)'
where:
Is the high-level qualifier for your FOCUS production libraries.
You can omit the allocation for ddname ACCESS if you select the PSB name with the IMS SET PSB command, not in an Access File (see Implementing DBCTL).
To invoke the adapter as a batch job, submit the following JCL after editing it to conform to the standards at your site and adding a JOB card. Note that the JCL allocates the entire FOCPSB data set, not just one member:
//FOCDBCTL EXEC PGM=FOCUS,REGION=nn //STEPLIB DD DSN=prefix.FOCLIB.LOAD,DISP=SHR // DD DSN=IMS.RESLIB,DISP=SHR // DD DSN=prefix.IMS.LOAD,DISP=SHR // DD DSN=prefix.FUSELIB.LOAD,DISP=SHR //ERRORS DD DSN=prefix.ERRORS.DATA,DISP=SHR //FOCPSB DD DSN=prefix.FOCPSB.DATA,DISP=SHR //FOCEXEC DD DSN=prefix.FOCEXEC.DATA,DISP=SHR //MASTER DD DSN=prefix.MASTER.DATA,DISP=SHR //ACCESS DD DSN=prefix.ACCESS.DATA,DISP=SHR //SYSOUT DD SYSOUT=* //*FSTRACE DD SYSOUT=*,DCB=BLKSIZE=133 //*FSTRACE4 DD SYSOUT=*,DCB=BLKSIZE=133 //SYSPRINT DD SYSOUT=* //SYSIN DD * TSO IMS SET IMSPZP xx TSO IMS SET DBCTL ON TSO IMS SET PSB psbname TABLE FILE ... . . . END FIN /* //
where:
Is the region size.
Is the high-level qualifier for your FOCUS production libraries.
Is the suffix for the DRA Startup Table, chosen during installation (see Installation Instructions).
Is the name of the PSB to use.
Note:
To implement the DBCTL environment, issue the following commands in the order shown:
ENGINE IMS SET IMSPZP {xx|00}
ENGINE IMS SET DBCTL ON
where:
Indicates the suffix for the DRA Startup Table, chosen during installation (see Installation Instructions). The default is 00.
Next, if you did not create an Access File to automatically select the PSB for your request (see Creating FOCUS Descriptions), or to change the selected PSB, issue the following command either from the command line or in a FOCEXEC
ENGINE IMS SET PSB psbname
where:
Is the name of the FOCPSB library member to use. This name must be identical to the name of the actual PSB that IMS will access. If the member does not exist, the following error message is generated:
(FOC4261) FOCPSB MEMBER NOT FOUND: psbname
Note:
(FOC4295) ACCESS POINTS TO DIFFERENT PSBS IN JOIN
To see the settings in effect at any time during your session, issue the following query command:
ENGINE IMS SET ?
Release Dependent Adapter Features contains an example of the IMS SET ? query command.
Information Builders |