A sample command list (CLIST) that you can use to start the CICS® VR ISPF dialog interface. This sample CLIST is member DWWCLIST of the SDWWCNTL data set.
PROC 0
CONTROL FLUSH NOPROMPT MSG
/* --------------------------------------------------------------- */
/* */
/* @BANNER_START 01 */
/* Licensed Materials - Property of IBM */
/* */
/* 5655-Y24 DWWCLIST */
/* */
/* (C) Copyright IBM Corp. 1991, 2012 */
/* */
/* */
/* */
/* */
/* @BANNER_END */
/* PN= REASON REL YYMMDD ID: REMARKS */
/* $L0= ....... 000 910101 ......... Creation */
/* $L1= CVR410 410 050909 ......... SDWWLENU Added */
/* $L2= CVR420 420 060909 ......... Hlq variables Added */
/* $L3= CVR430 430 070830 ......... Hlq and Suff for RCDS */
/* --------------------------------------------------------------- */
/* */
/* FUNCTION: SAMPLE CLIST TO INVOKE THE CICSVR ISPF DIALOG. */
/* (ENGLISH) */
/* --------------------------------------------------------------- */
ISPEXEC CONTROL ERRORS RETURN /* RETURN IPF ERRORS TO CLIST */
ISPEXEC VGET ZUSER SHARED /* GET USERID */
/* --------------------------------------------------------------- */
/* Replace the value of the HLQ variable with what you have */
/* specified for @hlq@ in the DWWALLOC job. */
/* --------------------------------------------------------------- */
SET HLQ = DWW.V510 /* HIGH LEVEL QUALIFIER FOR */
/* CICSVR LIBRARIES */
/* --------------------------------------------------------------- */
/* Replace the value of the UHLQ variable with the high level */
/* qualifier that you have used for allocation the following */
/* data sets: */
/* &uhlq..DWWMSG */
/* &uhlq..DWWPRINT */
/* &uhlq..ISPFILE */
/* --------------------------------------------------------------- */
SET UHLQ = DWW.&ZUSER /* HIGH LEVEL QUALIFIER FOR */
/* USER DATA SETS */
/* --------------------------------------------------------------- */
/* Replace the values for the PREFIX and the SUFFIX variables */
/* to what you have specified in DWWRCDEF sample job to allocate */
/* the RCDS data sets: */
/* &prefix.DWWCON1.GRP&suffix */
/* &prefix.DWWCON2.GRP&suffix */
/* &prefix.DWWCON3.GRP&suffix */
/* --------------------------------------------------------------- */
SET PREFIX = DWW.V510 /* RCDS PREFIX */
SET SUFFIX = PROD /* RCDS SUFFIX */
/* --------------------------------------------------------------- */
ISPEXEC VGET ZPFSHOW PROFILE /* CHANGE PFSHOW SO THAT */
SET PFSAVE = &ZPFSHOW /* PF-KEY ARE DISPLAYED DURING*/
SET PFCMD = &STR(PFSHOW ON) /* CICSVR DIALOG INTERFACE */
ISPEXEC DISPLAY COMMAND(PFCMD)
ISPEXEC LIBDEF ISPFILE
ISPEXEC LIBDEF ISPPLIB
ISPEXEC LIBDEF ISPMLIB
ISPEXEC LIBDEF ISPTLIB
FREE FI(DWWCON1,DWWCON2,DWWCON3,DWWMSG,DWWPRINT,MYFILE,ISPFILE)
FREE FI(DWWSLIB,DWWLLIB)
FREE FI(DWWLOAD)
/* ---------------------------------------------------- DWWCON1 */
ALLOC FI(DWWCON1) DA('&PREFIX..DWWCON1.GRP&SUFFIX') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWCON1
GOTO SETMSG3
END
/* ---------------------------------------------------- DWWCON2 */
ALLOC FI(DWWCON2) DA('&PREFIX..DWWCON2.GRP&SUFFIX') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWCON2
GOTO SETMSG3
END
/* ---------------------------------------------------- DWWCON3 */
ALLOC FI(DWWCON3) DA('&PREFIX..DWWCON3.GRP&SUFFIX') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWCON3
GOTO SETMSG3
END
/* ---------------------------------------------------- DWWMSG */
/** ALLOC FI(DWWMSG) SYSOUT(X) DEST(XXXX) ***/
ALLOC FI(DWWMSG) DA('&UHLQ..DWWMSG') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWMSG
GOTO SETMSG3
END
/* ---------------------------------------------------- DWWPRINT */
/** ALLOC FI(DWWPRINT) SYSOUT(X) DEST(XXXX) ***/
ALLOC FI(DWWPRINT) DA('&UHLQ..DWWPRINT') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWPRINT
GOTO SETMSG3
END
/* ---------------------------------------------------- ISPLLIB */
/* The following line (LIBDEF for ISPLLIB) is added only if */
/* the CICSVR LOADLIB'S are not allocated to ISPLLIB in the */
/* TSO LOGON PROC. */
/* ------------------------------------------------------------- */
ISPEXEC LIBDEF ISPLLIB DATASET ID('&HLQ..SDWWLOAD', +
'&HLQ..SDWWLENU')
/* ---------------------------------------------------- DWWLOAD */
/* The following allocation is required only if the CICSVR */
/* LOADLIB'S are not allocated to ISPLLIB in the TSO LOGON */
/* PROC. */
/* ------------------------------------------------------------- */
SET &LIBS = &STR('&HLQ..SDWWLOAD')
SET &DSN = &STR('&HLQ..SDWWLENU')
SET &LIBS = &STR(&LIBS , &DSN)
ALLOC FI(DWWLOAD) DA(&LIBS) SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWLOAD
GOTO SETMSG3
END
/* ---------------------------------------------------- DWWLLIB */
SET &LIBS = &STR('&HLQ..SDWWLOAD')
SET &DSN1 = &STR('&HLQ..SDWWLENU')
SET &DSN2 = &STR('&HLQ..DWWEXLD')
SET &LIBS = &STR(&LIBS , &DSN1 , &DSN2)
ALLOC FI(DWWLLIB) DA(&LIBS) SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWLLIB
GOTO SETMSG3
END
/* ---------------------------------------------------- ISPPLIB */
ISPEXEC LIBDEF ISPPLIB DATASET ID('&HLQ..SDWWPENU')
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = ISPPLIB
GOTO SETMSG3
END
/* ---------------------------------------------------- ISPMLIB */
ISPEXEC LIBDEF ISPMLIB DATASET ID('&HLQ..SDWWMENU')
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = ISPMLIB
GOTO SETMSG3
END
/* ---------------------------------------------------- ISPTLIB */
ISPEXEC LIBDEF ISPTLIB DATASET ID('&HLQ..SDWWTENU')
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = ISPTLIB
GOTO SETMSG3
END
/* --------------------------------------------------- DWWSLIB */
SET &LIBS = &STR('&UHLQ..ISPFILE')
SET &DSN = &STR('&HLQ..SDWWSENU')
SET &LIBS = &STR(&LIBS , &DSN)
ALLOC FI(DWWSLIB) DA(&LIBS) SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = DWWSLIB
GOTO SETMSG3
END
/* ---------------------------------------------------- ISPFILE */
ALLOC FI(MYFILE) DA('&UHLQ..ISPFILE') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = MYFILE
GOTO SETMSG3
END
ALLOC FI(ISPFILE) DA('&UHLQ..ISPFILE') SHR
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN DO
SET DDNAME = ISPFILE
GOTO SETMSG3
END
/**************************************************************/
/* INVOKE CICSVR DIALOG PROGRAM. */
/**************************************************************/
ISPEXEC SELECT PGM(DWWPM) NEWAPPL(DWW) PASSLIB
SET RCSAVE = &LASTCC
IF &RCSAVE ¬= 0 THEN +
SET ZERRLM = &STR(CICSVR DIALOGS COMPLETED, RC = &RCSAVE)
GOTO FINISH
/**************************************************************/
/* SET ERROR MESSAGE IF ANY, TO BE DISPLAYED ON ISPF PANEL. */
/**************************************************************/
SETMSG3: +
SET ZERRLM = &STR(ALLOCATE OF DDNAME &DDNAME FAILED WITH RC= &RCSAVE)
FINISH: +
ISPEXEC LIBDEF ISPFILE
ISPEXEC LIBDEF ISPPLIB
ISPEXEC LIBDEF ISPMLIB
ISPEXEC LIBDEF ISPTLIB
ISPEXEC LIBDEF ISPLLIB /** ONLY IF NOT IN LOGON PROC **/
FREE FI(DWWCON1,DWWCON2,DWWCON3,DWWMSG,DWWPRINT,MYFILE,ISPFILE)
FREE FI(DWWSLIB,DWWLLIB)
FREE FI(DWWLOAD)
IF &RCSAVE = 0 THEN +
SET ZERRHM = &STR(ISR00003) /* SET TO TOP ISPF TUTOR PANEL */
IF &RCSAVE = 0 THEN +
GOTO EXIT1 /* NORMAL EXIT */
SETERROR: +
SET ZERRMSG = &STR(ISRZ002) /* USE THIS ISPF MESSAGE NUMBER.*/
SET ZERRALRM = &STR(YES) /* BEEP AT USER */
SET ZERRNM = &STR(ISR00003) /* SET TO TOP ISPF TUTOR PANEL */
EXIT1: +
SET PFCMD = &STR(PFSHOW &PFSAVE) /* RESTORE PFKEY DISPLAY TO */
ISPEXEC DISPLAY COMMAND(PFCMD) /* PREVIOUS STATUS */
EXIT CODE(&RCSAVE)