Sample logon procedure

Figure 1 is an example of a logon procedure that concatenates the libraries for the SMP/E dialogs.

Note: Depending on the system you are connecting the dialogs to, you may need to change your logon procedure, a CLIST, or both. It is common practice to have a logon procedure call a CLIST every time a user logs on. This is normally done so that minor changes to concatenations do not require changes to the logon procedure, or so users with the same logon procedure can have the CLIST perform different allocations from the ones performed for other users.

If you make changes only to your logon procedure and the procedure calls a CLIST that changes a concatenation, you may end up missing changes you made in your logon procedure. In this case, instead of (or in addition to) updating the concatenations in your logon procedure, you should update the concatenations in the CLIST that is called.

Figure 1. Sample logon procedure that concatenates SMP/E and ISPF libraries
//SMPE     EXEC PGM=IKJEFT01
//SYSPROC  DD DSN=GIM.SGIMCLS0,DISP=SHR     /* SMP/E CLISTs. */
//         DD DSN=ISP.SISPCLIB,DISP=SHR
//SYSHELP  DD DSN=SYS1.HELP,DISP=SHR
//SYSPRINT DD TERM=TS
//SYSIN    DD TERM=TS
//************************************************************
//*
//* ISPF temporary data sets (no ISPCTL1 or ISPCTL2)
//*
//************************************************************
//ISPLST1 DD DISP=NEW,UNIT=SYSALLDA,SPACE=(CYL,(1,1)),
//        DCB=(LRECL=121,BLKSIZE=0,RECFM=FBA)
//ISPLST2 DD DISP=NEW,UNIT=SYSALLDA,SPACE=(CYL,(1,1)),
//        DCB=(LRECL=121,BLKSIZE=0,RECFM=FBA)
//************************************************************
//*
//* ISPF/SMPE load modules, panels, skeletons, messages,
//*           tables
//*    NOTE:  SMPTABL is a single installation-wide
//*           ISPF table data set shared by all SMP/E
//*           users. It is initially allocated as an empty PDS
//*           LRECL=80, RECFM=FB, BLKSIZE= (compatible with
//*           ISP.V2R3M0.ISRTLIB).
//*
//************************************************************
//ISPLLIB DD DSN=GIM.SGIMLMD0,DISP=SHR     /* SMP/E LMODs.  */
//ISPPLIB DD DSN=GIM.SGIMPENU,DISP=SHR     /* SMP/E panels. */
//        DD DSN=ISP.SISPPENU,DISP=SHR
//ISPSLIB DD DSN=GIM.SGIMSENU,DISP=SHR   /* SMP/E skeletons.*/
//        DD DSN=ISP.SISPSENU,DISP=SHR
//ISPMLIB DD DSN=GIM.SGIMMENU,DISP=SHR   /* SMP/E messages. */
//        DD DSN=ISP.SISPMENU,DISP=SHR
//ISPTLIB DD DSN=GIM.SGIMTENU,DISP=SHR     /* SMP/E tables. */
//        DD DSN=ISP.SISPTENU,DISP=SHR
//        DD DSN=user-defined name,DISP=SHR /* SMP/E tables.*/
//SMPTABL DD DSN=user-defined name,DISP=SHR /* SMP/E tables.*/