An example of using CTJAPI for enforcement and reformatting is shown in the following figure.
Fig.JV.8.1 CTJAPI Macro Example - Verification
CTJAPIA   CSECT     
CTJAPIA   AMODE 31  
CTJAPIA   RMODE 31  
.
.         PERFORM HOUSEKEEPING ETC.
.
.
*        INITIALIZATION
*
INIT     CTJAPI INIT,RAREA=APIJ,MCT=0
*
*        PERFORM JCL VERIFICATION
*
         CTJAPI SCAN,RAREA=APIJ,JMSG=Y, CALL CTJAPI VERIFY             X
               LIB=FILDSN,              FOR THIS PDS....               X
               MEMBER=FILDSMEM,         AND MEMBER,WITH PARMS          X
               FV=Y,                    PERFORM FILE VERIFICATION      X
               FA=Y                     CHECK FILE ACCESS              
*
*        FREE OUTPUT BUFFER 
*
         MVC   JOBSTEP_TTOKEN,JAPIJMSGT  GET TCB TOKEN                       
         IARV64 REQUEST=DETACH,    FREE MEMORY OBJECT                  X
               COND=YES,           CONDITIONAL REQUEST                 X
               TTOKEN=JOBSTEP_TTOKEN, RELATE THE STOR TO TCB           X
               MATCH=SINGLE,                                           X
               MEMOBJSTART=JAPIJMSG@, AREA ADDRESS                     X
               MF=(E,RV64PRMS)     POINTER TO THE PARAMETERS AREA 
* 
*        TERMINATION
*
END      CTJAPI END,RAREA=APIJ
         MVC    MYRC,JAPIRC        SAVE RC 
.
.        PERFORM PROGRAM TERMINATION
.       
.
*
*        DATA AREAS
*
JOBSTEP_TTOKEN DS CL16            TCB TOKEN                             
         IARV64 MF=(L,RV64PRMS)   IARV64 PARAMETERS - LIST FORM                   
FILDSN   DC   CL44’MY.JCL.PDS’    DSNAME
FILDSMEM DC   CL8’JOB1’           MEMBER
MYRC     DS   F                   RETURN CODE    
APIJ          CTJAPI APID
Fig.JV.8.2 CTJAPI Macro Example - Enforcement
CTJAPIA   CSECT     
CTJAPIA   AMODE 31  
CTJAPIA   RMODE 31  
.
.         PERFORM HOUSEKEEPING ETC.
.
.
*        INITIALIZATION
*
INIT     CTJAPI INIT,RAREA=APIJ,MCT=0
*
*        PERFORM ENFORCEMENT. REPLACE THE MEMBER AFTER ENFORCEMENT
* 
         CTJAPI ENF,RAREA=APIJ,JMSG=N, CALL CTJAPIENFORCE              X
               LIB=FILDSN,              FOR THIS PDS....               X
               MEMBER=FILDSMEM,         AND MEMBER,WITH PARMS          X
               SAV=Y,                   SAVE CHANGED MEMBER IN SAME PDSX
               OVR=Y                    REPLACE MEMBER               
* 
*        TERMINATION
*
END      CTJAPI END,RAREA=APIJ
         MVC   MYRC,JAPIRC              SAVE RC
.
.        PERFORM PROGRAM TERMINATION
.       
.
*
*        DATA AREAS
*
FILDSN   DC   CL44’MY.JCL.PDS’    DSNAME
FILDSMEM DC   CL8’JOB1’           MEMBER 
MYRC     DS   F                   RETURN CODE    
APIJ          CTJAPI APID
Parent Topic |