Previous Topic: Dynamic Plan Selection Exit RoutinesNext Topic: CICS Trace Table Entries


Sample Exit Program

Following is a sample plan selection exit program that you can use as a model to design your own plan selection exit routine(s).

*ASM XOPTS(NOEIPLOG,NOPROLOG)
	TITLE  'DCPLNPR - SAMPLE DYNAMIC PLAN EXIT'
***********************************************************************
* MODULE NAME=  DCPLNPR                                               *
*                                                                     *
* DESCRIPTIVE NAME=SAMPLE DYNAMIC PLAN EXIT                           *
*                                                                     *
* FUNCTION=                                                           *
*    SAMPLE USER EXIT PROGRAM USED TO DYNAMICALLY MODIFY              *
*    AUTHORIZATION ID                                                 *
*                                                                     *
* NOTES=                                                              *
*    RESTRICTIONS=  NONE                                              *
*    DISPATCHING =  RUNS UNDER CICS DISPATCHER                        *
*                                                                     *
*    REGISTER CONVENTIONS=                                            *
*         R2 =  PLANPARM           COMMAREA  (PARAMETER LIST)         *
*         R3 =  CODEREG            BASE REGISTER                      *
*         R11 = EIBREG             REGISTER TO ADDRESS THE EIB        *
*         R13 = DATAREG            DYNAMIC STORAGE REGISTER           *
*                                                                     *
* MODULE TYPE=  CICS/VS                                               *
*                                                                     *
*    PROCESSOR=   ASSEMBLER F                                         *
*                                                                     *
*    ATTRIBUTES= RE-ENTRANT                                           *
*                                                                     *
* INPUT=                                                              *
*  SYMBOLIC LABEL/NAME= DFHEICAP  (COMMONAREA)                        *
*  DESCRIPTION= DYNAMIC PLAN PARAMETER LIST                           *
*                                                                     *
* OUTPUT=                                                             *
*  SYMBOLIC LABEL/NAME= PLANPARM                                      *
*  DESCRIPTION= DYNAMIC PLAN PARAMETER LIST                           *
*                                                                     *
*    CONTROL BLOCKS=                                                  *
*        EIB          CICS COMMAND LEVEL INTERFACE BLOCK              *
*                                                                     *
* MACROS=                                                             *
*   DFHREGS - STANDARD CICS/VS REGISTER EQUATES  (R0-RF)              *
*   EXEC CICS COMMANDS - FOR CICS SERVICES                            *
*                                                                     *
***********************************************************************
        EJECT
***********************************************************************
*        REGISTER EQUATES                                             *
***********************************************************************
         DFHREGS
         EJECT
***********************************************************************
*        DYNAMIC STORAGE                                              *
***********************************************************************
         DFHEISTG
         DFHEIEND
         EJECT
***********************************************************************
*        COMMAREA DSECT                                               *
***********************************************************************
PLANPARM DSECT
CSPLAN   DS    CL8                     PLAN NAME
CSAUTHID DS    CL18                    AUTHID
CSUSER   DS    A                       A(USER INFORMATION BLOCK)
         EJECT
         PRINT GEN
DCPLNPR  DFHEIENT
         L     R2,DFHEICAP         GET A(COMMAREA)
         USING PLANPARM,R2         SETUP ADDRESSABILITY
*          .
*          .
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
*                                                                     *
*    INSERT CODE TO UPDATE THE AUTHID (CSAUTHID) AND/OR               *
*    SPECIAL USER FIELD (CSUSER).                                     *
*                                                                     *
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*
         MVC   CSAUTHID,AUTHID
         LA    R15,USERINFO
         ST    R15,CSUSER
         EXEC  CICS RETURN
USER_INFO  DC  CL32'USER INFORMATION'
AUTH_ID  DC    CL18'TEST'
         END