Using CA IDMS Culprit to access a record which is defined with a concatenated key

Document ID : KB000010488
Last Modified Date : 14/02/2018
Show Technical Document Details
Introduction:

CA IDMS network database records may be defined with CALC keys that are defined as a concatenation of multiple fields. CA IDMS Culprit cannot automatically access these records; but it can do so if a DB-EXIT is invoked. 

Environment:
Culprit can be used in any CA IDMS environment where the product is licensed.
Instructions:

Using CA IDMS Culprit, neither the KEY nor KEYFILE parameter supports concatenated calc keys (contiguous or non-contiguous).

However, Culprit users can use the DB-EXIT calc function successfully with this type of key, if they use CULLUS43 along with DB-EXIT.

EXAMPLE:

A DEPARTMENT-101 record was defined in the schema with "location mode is calc using (div-101 branch-101 dept-101)". To access this calc record directly use the following technique: 

 

PATH-- DEPARTMENT-101        $SETS UP A DUMMY PATH FOR DB-EXIT

010 DIV    '100'             $WORK FIELD CONTAINING PARTIAL KEY VALUE

010 DIV    '100'             $WORK FIELD CONTAINING PARTIAL KEY VALUE

010 BRANCH '020'             $WORK FIELD CONTAINING PARTIAL KEY VALUE

010 DEPT   '999'             $WORK FIELD CONTAINING PARTIAL KEY VALUE

017100  CALL US43 (DIV DIV-101 3)             $MOVES KEY VALUE TO KEY

017     CALL US43 (BRANCH BRANCH-101 3)       $MOVES KEY VALUE TO KEY

 

017     CALL DB-EXIT ('CALC' 'DEPARTMENT-101 ' DEPT-101 DEPT 3)

In the Culprit job, you'll also need to code the elements you want on type 5 lines. Culprit will automatically generate the REC card (definition) of any element you reference in a Culprit report but you need to code the output line manually.

Format:

nn5xyyyy element-name

where nn=report number (00-99)

x= line number (1-8)

yyyy = output column

e.g.

01510001 emp-id-0415

01510010 emp-last-name-0415

 

This will print id in column 1 and last name in column 10 on output line 1 

Additional Information:

Information on Culprit reports can be found here: 

https://docops.ca.com/ca-idms/19/en/reporting/ca-culprit-reports

 

Information on Culprit User Modules can be found here: 

https://docops.ca.com/ca-idms-ref/19/en/ca-culprit-user-modules