In the CA Easytrieve IMS/IDMS Tickler File - can you add/use more fields beside the key field?

Document ID : KB000016393
Last Modified Date : 14/02/2018
Show Technical Document Details
Question:

I would like to know whether or not the Tickler File can contain other fields besides the key for the database root key. I would like to use the Automatic input of an IMS database using the tickler file but would like to include some other data on the record which once the IMS record was found, I could compare some fields between the file and the database segment.

Answer:

Yes, additional fields can be added to the tickler file. For instance:

...

//KEYS     DD *                                                         

023003806          SWITCH                                                

023007228          NNNNNNN                                              

023009228          CAPACITOR                                            

023009270          HOUSING                                              

//SYSIN   DD *                                                           

FILE DLIFILE DLI(DI21PART 1)                                            

*                                                                       

RECORD PARTROOT 50 KEY(PARTKEY 1 17)                                     

  PARTKEY           1   17  A                                           

  PART-NUMBER       1   17  A                                           

  PART-DESC        27   24  A                                           

*                                                                        

FILE KEYS                                                               

T-KEY               1   17  A                                           

T-DESC             20   24  A                                            

*                                                                       

*----------------------------------------------------------------------*

JOB INPUT (DLIFILE) NAME MYPROG                                         

*                                                                        

   RETRIEVE DLIFILE     +                                               

      KEYFILE  KEYS     +                                               

      KEYVALUE T-KEY    +                                                

      SELECT (PARTROOT)                                                 

*                                                                       

   IF T-DESC = PART-DESC                                                 

      DISPLAY 'PARTKEY___' PARTKEY ' PARTDSC___' PART-DESC              

   END-IF                                                                

*                                                                       

/*                                                                       

...

 

The result without the blue part is:

...

PARTKEY___023003806         PARTDSC___SWITCH          

PARTKEY___023007228         PARTDSC___HOUSING         

PARTKEY___023009228         PARTDSC___CAPACITOR       

PARTKEY___023009270         PARTDSC___HOUSING         

...

all 4 keys from the KEYS input are displayed as expected...

Executing the entire source above, with the blue part, then the result is:

...

PARTKEY___023003806         PARTDSC___SWITCH    

PARTKEY___023009228         PARTDSC___CAPACITOR 

PARTKEY___023009270         PARTDSC___HOUSING   

...

as expected - only three lines because "NNNNNNN" is not equal to "HOUSING ".