Previous Topic: How CULLUS22 WorksNext Topic: Helpful Hints


How to Use CULLUS22

Preparing to Use CULLUS22

Define the ISAM data set in the execution JCL:

System

Step

JCL statements *

z/OS

CULL

Define the ISAM file on the US22 DD statement:

//US22 DD DSN=user.file,UNIT=disk,

DISP=shr,VOL=SER=nnnnnn

z/VSE

CULL

// ASSGN SYS004,DISK,VOL=nnnnnn

// DLBL filename,'file-id',ISE

// EXTENT SYS004,nnnnnn,4,1,rt,nt

// EXTENT SYS004,nnnnnn,1,2,rt,nt

// EXTENT SYS004,nnnnnn,2,3,rt,nt

 

rt = relative track where the

data extent begins

nt = number of tracks allocated

to this file

z/VM

 

ISAM is not supported.

Note: * See the CA Culprit for CA IDMS Reference Guide for a full explanation of the syntax.

If accessing more than one ISAM file:

First—Modify the CULLUS22 Assembler source code:

System

Modification

z/OS

Change the DDNAME keyword in the DCB macro

z/VSE

Use unique filenames in the DTF macro for each copy of CULLUS22

z/VM

ISAM is not supported.

Second—Reassemble and link edit each modification of CULLUS22 using unique names.

Using CULLUS22

To invoke CULLUS22:

First—Define a field that contains the key required to retrieve records from the ISAM file. The format of the key field depends on the operating system:

System...

The key format...

z/OS

The same as the ISAM key

z/VSE

8-byte packed decimal

Second—Define a dummy buffer area equal to the length of the retrieved record.

Third—Define a 1-byte alphanumeric work field to act as a communications switch.

Fourth—Issue a CALL to CULLUS22 from type 7 logic:

Col
2
▼
RPT-nn7sss CALLL US22 (return-position-v field-v key-v)

The value...

Set by...

Means...

Any but C*

User

OPEN file and READ.

C

User

CLOSE file.

Y

CULLUS22

Record found.

N

CULLUS22

Record not found.

E

CULLUS22

Error on READ.

Z (z/OS ONLY)

CULLUS22

OPEN file. Zero key length in the DCB. (probable JCL error)

Note: * CULLUS22 accepts any value other than C as a READ instruction.

Fifth—Test the value of the communications switch (ARG2) in type 7 logic.