Start of change

Setting up the ISPF interface

To run IVP jobs the ISPF interface must be set up first, using the sample JCL and pre-allocated data sets.

The data sets are pre-allocated to the following DD statements; DWWMSG, DWWDMSG, DWWPRINT, and DWWDUMP.

Alternatively, you can use the sample JCL shown below to define the data sets. The data sets must have unique names for ISPF, CICS VR utilities, and the server. Use the TSO user ID as HLQ in ISPF for DWWMSG, DWWDMSG, DWWDUMP, and DWWPRINT.

Before running the CICS VR dialog interface, you must create the data sets that are allocated to the ISPFILE, DWWMSG, and DWWPRINT DD names in DWWCLIST.
Figure 1. Example job to create message and dump data sets
//JTILLI1 JOB (999,POK),'CICS VR 4.3',CLASS=A,MSGLEVEL=(1,1), 
// MSGCLASS=T,NOTIFY=&SYSUID,REGION=0M 
/*JOBPARM L=9999,SYSAFF=SC66 
//BR14 EXEC PGM=IEFBR14 
//DWWDUMP1 DD DISP=(,CATLG),UNIT=3390,SPACE=(CYL,(10,10)), 
//            RECFM=VBA,LRECL=84,BLKSIZE=3120, 
//            DSN=JTILLI1.V430.DWWDUMP 
//DWWPRINT DD DISP=(,CATLG),UNIT=3390,SPACE=(CYL,(1,1)), 
//            RECFM=FBA,LRECL=133,BLKSIZE=27930, 
//            DSN=JTILLI1.V430.DWWPRINT 
//DWWDMSG1 DD DISP=(,CATLG),UNIT=3390,SPACE=(CYL,(1,1)), 
//            RECFM=VBA,LRECL=84,BLKSIZE=3120, 
//            DSN=JTILLI1.V430.DWWDMSG 
//DWWMSG2  DD DISP=(,CATLG),UNIT=3390,SPACE=(CYL,(1,1)), 
//            RECFM=VBA,LRECL=133,BLKSIZE=27930, 
//            DSN=JTILLI1.V430.DWWMSG
//ISPFILE DD DISP=(,CATLG),UNIT=3390,SPACE=(CYL,(1,1,2)), 
// RECFM=FB,LRECL=80,BLKSIZE=32000, 
// DSN=JTILLI1.V430.ISPFILE 
The sample CLIST is provided in member DWWCLIST of the SDWWCNTL data set. The example below shows the CLIST used to start the ISPF dialog interface. To activate the ISPF interface modify settings for the following variables into the sample CLIST to allocate the required data sets.

The example below shows the CLIST updated with the settings for HLQs and RCDS names that are used in this topic.

PROC 0
CONTROL   FLUSH NOPROMPT    MSG
/* --------------------------------------------------------------- */
/*                                                                 */
/*  @BANNER_START                           01                       */
/*  Licensed Materials - Property of IBM                             */
/*                                                                   */
/*  5655-P30              DWWCLIST                                   */
/*                                                                   */
/*  (C) Copyright IBM Corp. 1991, 2008                               */
/*                                                                   */
/*                                                                   */
/*                                                                   */
/*                                                                   */
/*  @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.V430               /* 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 = &ZUSER..V430             /* 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 = DWWUSER.V430           /* 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

Figure 2. Sample DWWCLIST
/**************************************************************/
/*  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)
End of change