Dialog developers can also provide customized member list display
panels for their dialogs. The name of the customized member list display
panel is passed as a parameter to the LMMDISP service.
A customized member list panel should be modeled after the LMMDISP
default member list panel, ISRML000.
Note: Panel ISRML000 is provided as both source code (written in Dialog
Tag Language, or DTL) and as generated output. If you use this panel
as a model for creating your own customized panel, be sure to copy
the DTL source code for modification, as it is easier to modify than
the generated output panel. The DTL source code can be found in one
of the SISPGxxx libraries, where xxx is
the designator for a specified language.
The customized panel must include a Command field named ZCMD and
a dynamic area named ZDATA. In addition, for customized member list
panels, the dynamic area must be 80 characters wide. The Scroll field
is optional. The name of the Scroll field on member list panels is
ZSCML. This same name can be used on a customized member list panel.
Inclusion of the variables that output the data set name, relative
row number, and total number of rows is optional. If you want to display
the volume of the data set you can use variable ZDSVOL. Customized
member list panels should also meet the requirements for a movable
Command line. Figure 1 shows an
example of a customized member list panel that was generated by Dialog
Tag Language code.
See the z/OS ISPF Dialog Developer's Guide and Reference for
a discussion of these needs.
Figure 1. Customized member
list panel (Part 1 of 3))PANEL KEYLIST(ISRSPBC,ISR)
)ATTR DEFAULT(???) FORMAT(MIX)
0B TYPE(AB)
0D TYPE(PS)
2D TYPE(ABSL) GE(ON)
2E TYPE(PT)
28 TYPE(FP)
0A TYPE(NT)
13 TYPE(NEF) PADC(USER)
16 TYPE(VOI) PADC(USER)
26 AREA(DYNAMIC)
08 TYPE(DATAOUT) PAS(ON) CSRGRP(99)
09 TYPE(DATAOUT)
29 AREA(DYNAMIC) EXTEND(ON) SCROLL(ON)
01 TYPE(DATAIN) CAPS(ON) PADC(&ZMLPAD) PAS(ON)
02 TYPE(DATAOUT) INTENS(&MLI2) SKIP(ON) COLOR(&MLC2) HILITE(&MLH2)
03 TYPE(DATAIN) INTENS(&MLI5) CAPS(ON) COLOR(&MLC5) HILITE(&MLH5)
04 TYPE(DATAOUT) INTENS(&MLI3) COLOR(&MLC3) HILITE(&MLH3)
05 TYPE(DATAOUT)
06 TYPE(DATAOUT) INTENS(LOW)
14 TYPE(NEF) CAPS(ON) PADC(USER)
)ABC DESC('Menu') MNEM(1)
PDC DESC('Settings') UNAVAIL(ZPM1) MNEM(1) ACC(CTRL+S)
ACTION RUN(ISRROUTE) PARM('SET')
PDC DESC('View') UNAVAIL(ZPM2) MNEM(1) ACC(CTRL+V)
ACTION RUN(ISRROUTE) PARM('BR1')
PDC DESC('Edit') UNAVAIL(ZPM3) MNEM(1) ACC(CTRL+E)
ACTION RUN(ISRROUTE) PARM('ED1')
PDC DESC('ISPF Command Shell') UNAVAIL(ZPM4) MNEM(6) ACC(CTRL+C)
ACTION RUN(ISRROUTE) PARM('C1')
PDC DESC('Dialog Test...') UNAVAIL(ZPM5) MNEM(8) ACC(CTRL+T)
ACTION RUN(ISRROUTE) PARM('DAL')
PDC DESC('Other IBM Products...') UNAVAIL(ZPM6) MNEM(1) ACC(CTRL+O)
ACTION RUN(ISRROUTE) PARM('OIB')
PDC DESC('SCLM') UNAVAIL(ZPM7) MNEM(3) ACC(CTRL+L)
ACTION RUN(ISRROUTE) PARM('SCL')
PDC DESC('ISPF Workplace') UNAVAIL(ZPM8) MNEM(6) ACC(CTRL+W)
ACTION RUN(ISRROUTE) PARM('WRK')
PDC DESC('Status Area...') UNAVAIL(ZPMS) MNEM(8) ACC(CTRL+A)
ACTION RUN(ISRROUTE) PARM('SAM')
PDC DESC('Exit') MNEM(2) PDSEP(ON) ACC(CTRL+X) ACTION RUN(EXIT)
)ABCINIT
.ZVARS=ISR@OPT
)ABC DESC('Functions') MNEM(1)
PDC DESC('Save List') MNEM(1) ACTION RUN(>SAVE)
PDC DESC('Change Colors') MNEM(1) ACTION RUN(>MLC)
)ABCINIT
.ZVARS=MEMOPT
)ABC DESC('Utilities') MNEM(1)
Figure 2. Customized member list panel
(Part 2 of 3)PDC DESC('Library') UNAVAIL(ZUT1) MNEM(1) ACC(ALT+1)
ACTION RUN(ISRROUTE) PARM('U1')
PDC DESC('Data set') UNAVAIL(ZUT2) MNEM(1) ACC(ALT+2)
ACTION RUN(ISRROUTE) PARM('U2')
PDC DESC('Move/Copy') UNAVAIL(ZUT3) MNEM(1) ACC(ALT+3)
ACTION RUN(ISRROUTE) PARM('U3')
PDC DESC('Data Set List') UNAVAIL(ZUT4) MNEM(2) ACC(ALT+4)
ACTION RUN(ISRROUTE) PARM('U4')
PDC DESC('Reset Statistics') UNAVAIL(ZUT5) MNEM(5) ACC(ALT+5)
ACTION RUN(ISRROUTE) PARM('U5')
PDC DESC('Hardcopy') UNAVAIL(ZUT6) MNEM(1) ACC(ALT+6)
ACTION RUN(ISRROUTE) PARM('U6')
PDC DESC('Download...') UNAVAIL(ZUTDT) MNEM(2) ACC(ALT+7)
ACTION RUN(ISRROUTE) PARM('UDT')
PDC DESC('Outlist') UNAVAIL(ZUT7) MNEM(2) ACC(ALT+8)
ACTION RUN(ISRROUTE) PARM('U8')
PDC DESC('Commands...') UNAVAIL(ZUT8) MNEM(1) ACC(ALT+9)
ACTION RUN(ISRROUTE) PARM('U9')
PDC DESC('Reserved') UNAVAIL(ZUT9) MNEM(6) ACTION RUN(ISRROUTE) PARM('U10')
PDC DESC('Format') UNAVAIL(ZUT10) MNEM(1) ACC(ALT+F1)
ACTION RUN(ISRROUTE) PARM('U11')
PDC DESC('SuperC') UNAVAIL(ZUT11) MNEM(1) PDSEP(ON) ACC(CTRL+F2)
ACTION RUN(ISRROUTE) PARM('U12')
PDC DESC('SuperCE') UNAVAIL(ZUT12) MNEM(3) ACC(CTRL+F3)
ACTION RUN(ISRROUTE) PARM('U13')
PDC DESC('Search-For') UNAVAIL(ZUT13) MNEM(2) ACC(CTRL+F4)
ACTION RUN(ISRROUTE) PARM('U14')
PDC DESC('Search-ForE') UNAVAIL(ZUT14) MNEM(4) ACC(CTRL+F5)
ACTION RUN(ISRROUTE) PARM('U15')
PDC DESC('Table Utility') UNAVAIL(ZUT15) MNEM(3) ACC(CTRL+F6)
ACTION RUN(ISRROUTE) PARM('U16')
PDC DESC('Directory List') UNAVAIL(ZUT16) MNEM(2) ACC(CTRL+F7)
ACTION RUN(ISRROUTE) PARM('U17')
)ABCINIT
.ZVARS=PDFUTIL
&zut9 = '1'
)ABC DESC('Help') MNEM(1)
PDC DESC('General') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01130')
PDC DESC('Scrolling') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01131')
PDC DESC('Pattern matching') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01232')
PDC DESC('LOCATE command') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01132')
PDC DESC('SORT command') MNEM(2) ACTION RUN(TUTOR) PARM('ISR01226')
PDC DESC('SAVE command') MNEM(2) ACTION RUN(TUTOR) PARM('ISR01229')
PDC DESC('REFRESH command') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01142')
PDC DESC('RESET command') MNEM(2) ACTION RUN(TUTOR) PARM('ISR01138')
PDC DESC('SELECT command') MNEM(5) ACTION RUN(TUTOR) PARM('ISR01133')
PDC DESC('MLC command') MNEM(1) ACTION RUN(TUTOR) PARM('ISR01237')
PDC DESC('S line command') MNEM(4) ACTION RUN(TUTOR) PARM('ISR01134')
PDC DESC('Statistics') MNEM(2) ACTION RUN(TUTOR) PARM('ISR01140')
PDC DESC('Appendices') MNEM(5) ACTION RUN(TUTOR) PARM('ISR00004')
PDC DESC('Index') MNEM(3) ACTION RUN(TUTOR) PARM('ISR91000')
)ABCINIT
Figure 3. Customized member list panel
(Part 3 of 3).ZVARS=MEMLHELP
)BODY CMD(ZCMD)
## Menu# Functions# Utilities# Help#
#------------------------------------------------------------------------------
#MEMBER LIST #Z #Row#Z #of#Z #
#Command ===>#Z #Scroll ===>#Z #
#ZMLCOLD #
#ZDATA #
# #
)INIT
.ZVARS = '(ZDSN ZMLCR ZMLTR ZCMD ZSCML)'
.HELP = ISR01130
.ATTR(ZMLCR)='JUST(RIGHT) PAD(''0'')'
.ATTR(ZMLTR)='JUST(RIGHT) PAD(''0'')'
&zds = &zdsn
&zscr = 'OFF'
&zt = LENGTH(zds)
IF (&zt > 42)
&zscr = 'ON'
VGET (MLC1 MLC2 MLC3 MLH1 MLH2 MLH3 ZMLPD ZSCML) PROFILE
VGET (ZGUI)
&ZMLPAD = 'USER' /* Init to user pad char OW18007*/
IF (&ZGUI = ' ') /* Not GUI mode OW18007*/
IF (&ZMLPD = ' ') /* User pad not wanted OW18007*/
&ZMLPAD = '.' /* Use default pad char OW18007*/
ELSE /* GUI mode OW18007*/
IF (&ZGUI NE 'CLIENT') /* Not for Web */
.ATTRCHAR(01) = 'TYPE(DATAOUT)' /* Set to output OW18007*/
IF (&MLC1 = ' ') &MLC1 = 'TURQ'
IF (&MLC2 = ' ') &MLC2 = 'BLUE'
IF (&MLC3 = ' ') &MLC3 = 'GREEN'
/* Fill Scroll Vars if */
IF (&ZSCML = ' ') &ZSCML = 'PAGE' /* Blank with page. */
)PROC
VPUT (ZSCML) PROFILE
IF (.CURSOR = ZDATA OR .CURSOR = ZMLCOLD) &ZMSCPOS = &ZCURPOS
ELSE &ZMSCPOS = '0000'
)FIELD
FIELD(ZDSN) SCROLL(ZSCR)
)PNTS
)END
/* 5650-ZOS COPYRIGHT IBM CORP 1994, 2013 */
/* ISPDTLC Release: 7.1. Level: PID */
/* z/OS 02.01.00. Created - Date: 1 Mar 2013, Time: 11:47 */
As with edit and browse customized panels, the distributed member
list panels have a dynamic area that extends to fill the available
depth of the screen. But, unlike edit and browse panels, (the dynamic
area on a member list panel does not expand to fill the width of the
screen), it must be 80 characters wide. The dynamic area can also
be fixed in length by removing the EXTEND keyword from the )ATTR section
of the panel definition.
See the description of dynamic areas in the z/OS ISPF Dialog Developer's Guide and Reference.
See Customizing Browse and Edit for a more
complete discussion on customizing panels.
Table 1 lists the ISPF-provided
output-only variables you can use on member list panels.
Table 1. Member list
panel output-only variablesVariable |
Description |
Format/Length |
---|
ZDAZWD |
Width of dynamic area (ZDATA) |
CHAR 4 |
ZDAMLN |
Length of dynamic area (ZDATA) |
CHAR 4 |
ZDSN |
First or only data set in concatenation |
CHAR 44 |
ZMLCOLS |
Member statistics column headings |
CHAR 80 |
ZMLCR |
Relative row number of top row |
FIXED 4 |
ZMLTR |
Total number of rows in member list |
FIXED 4 |
ZDSVOL |
Volume of the data set or first library in the
concatenation. |
CHAR 6 |