The File Master Plus for IMS batch job cannot use LAYOUT DD concatenation.
search cancel

The File Master Plus for IMS batch job cannot use LAYOUT DD concatenation.

book

Article ID: 399431

calendar_today

Updated On:

Products

File Master Plus for IMS File Master Plus

Issue/Introduction

Try to run the File Master IMS batch job (CAWKBATC) to extract IMS DBD segments based on layout data field names.
However, the JCL contains multiple layout datasets as concatenation under LAYOUT DD, causing CAWK1240E abend.

//LAYOUT DD DISP=SHR,DSN=IMS1.TEST.CAOPYLIB
//          DISP=SHR,DSN=IMS2.DEV.COPYLIB
//          DISP=SHR,DSN=IMS3.PROD.COPPYLIB

EXTRACT DBD(TESTDBD),
        ENV(IMS1),
        SEGMENT(AAAA,BBBB),
        SELSEGIF(AAAA,FIELD1-TEST,EQ,T'Y'),
        AND(BBBB,FIELD2-TEST1,EQ,T'Y'),
        SELSEGIF(AAAA,FIELD2-SEG1,EQ,T'P'),SEGLIM(AAAA,1)

*** CAWK1240E  KEYWORD ERROR    => SELSEGIF(AAAA,FIELD1-TEST,EQ,T'Y')
*** CAWK1240E Invalid layout member
*** CAWK1240E Open failed for layout member.
*** CAWK1240E Layout=IMS1.TEST.CAOPYLIB(TESTLAY)

*** CAWK1240E  KEYWORD ERROR    => AND(BBBB,FIELD2-TEST1,EQ,T'Y')
*** CAWK1240E Invalid layout member
*** CAWK1240E Open failed for layout member.
*** CAWK1240E Layout=IMS1.TEST.CAOPYLIB(TESTLAY1)

*** CAWK1240E  KEYWORD ERROR    => (AAAA,FIELD2-SEG1,EQ,T'P')
*** CAWK1240E Invalid layout member
*** CAWK1240E Open failed for layout member.
*** CAWK1240E Layout=IMS1.TEST.CAOPYLIB(TESTLAY2)

*** CAWK2000I Utility ending, Max CC=16

However, the layout members are not stored in the 1st layout DSN. It is stored in the 2nd layout DSN.

 

Environment

Z/OS, IMS

Cause

In the File Master Plus Batch LAYOUT DD, do not support concatenation of datasets.

Resolution

In order to use the concatenation of copybook 'DSN LIST,' it should be used as described below:
First, create a DSN LIST member with all the listed copybooks.

Option D on the File Master IMS Main Menu
Option I – Insert
Enter a member name in the DSN List field (make sure it starts with $ to designate copybook concatenation).
Then insert all the concatenated layouts.

Second, in the batch JCL in LAYOUT DD DSN, point to the above-created DSNLIST with the member name.

//LAYOUT    DD DSN=FILE.MASTER.IMS12.DEMO.DSNLIST($SELLAY),DISP=SHR
//SYSIN     DD *                                                        
 EXTRACT DBD(DBDIVP),                                                    
         DBRC(Y),                                                        
         SELSEGIF(STUDENT,STUDENT-ID,EQ,N'1')                            
/*