AllFusion CA-Librarian Subsystem Capabilities and Things You Should be Aware of
search cancel

AllFusion CA-Librarian Subsystem Capabilities and Things You Should be Aware of

book

Article ID: 55646

calendar_today

Updated On:

Products

Librarian

Issue/Introduction

AllFusion CA-Librarian Subsystem Capabilities and Things You Should be Aware of

Environment

Release:
Component: C21E

Resolution

AllFusion CA-Librarian has a Subsystem Option called LAM that reads AllFusion CA-Librarian Master files. This option allows users to have AllFusion CA-Librarian Master files specified in a SYSLIB DD concatenation during compiles. The AllFusion CA-Librarian Subsystem, LAM, handles only BSAM /BPAM logic and any deviation from this will fail because the I/O requests do not allow the CA-Librarian Subsystem to get control.

The AllFusion CA-Librarian Subsystem has been used with utility programs such as IEBGENER, IDCAMS and others. Language Compilers will work as long as the calling sequence to access a member is strictly BSAM /BPAM logic.

How this process works is that the SYSLIB DD data sets are handled and allocated by AllFusion CA-Librarian using the SUBSYS=LAM parameter. Even non-librarian data sets have to have the SUBSYS parameter specified when a librarian data set is present in a SYSLIB concatenation. When an OPEN, FIND, READ etc. is issued by the compiler, provided the SUBSYS=LAM parameter has been supplied, LAM checks if the Data set in the SYSLIB concatenation is a Librarian Master and if so it handles the request for that Data set. If the requested member is found and it happens to be a AllFusion CA-Librarian Master file, LAM sets up for reading that member from the AllFusion CA-Librarian Master file and passes the records to the compiler on subsequent READ requests. Without this functionality, COPYBOOK members imbedded within a Librarian main member and residing in an AllFusion CA-Librarian Master file would have to be written out to a PDS before attempting to compile the main member. This would require an extra step before compiling a member that has COPYBOOK members in an AllFusion CA-Librarian Master file.

Due to many environment changes with z/OS be sure you have the most current fixes for AllFusion CA-Librarian Subsystem LAM. In addition make sure you also have IBM most current fixes for z/OS 1.5 and higher, specifically APAR PQ90312 and APAR OA08754. If you are using SUBSYS=LAM abends can occur without these fixes.

Here is an example of using SUBSYS=LAM parameters to compile a member that resides in a Librarian Master as well as COPYBOOKS that the main member includes which are also in a Librarian Master.

//ASM EXEC PGM=ASMA90,REGION=0M,                                  
// PARM=('OBJECT,NODECK,LIST')             
//SYSLIB    DD    DSN=A.LIBRARIAN.FILE,DISP=SHR,SUBSYS=LAM       
//          DD    DSN=SYS2.MCALIB,DISP=SHR,SUBSYS=LAM           
//          DD    DSN=SYS1.MACLIB,DISP=SHR,SUBSYS=LAM                 
//SYSUT1    DD   DSN=&&SYSUT1,UNIT=VIO,SPACE=(1700,(1000,500))        
//SYSUT2    DD   DSN=&&SYSUT2,UNIT=VIO,SPACE=(1700,(500,500))         
//SYSUT3    DD   DSN=&&SYSUT3,UNIT=VIO,SPACE=(1700,(500,500))         
//SYSTERM   DD   SYSOUT=*,DCB=BLKSIZE=1089                            
//SYSLIN    DD   DSN=&&TEMP1,                                      
//             UNIT=VIO,SPACE=(3200,(15,15)),DISP=(NEW,PASS,DELETE),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=3200)                 
//SYSIN     DD  DSN=A.LIBRARIAN.FILE(PGM001),DISP=SHR,SUBSYS=LAM  
//SYSPRINT  DD  SYSOUT=*,DCB=BLKSIZE=1089