




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
說明:本人寫這個課件資料,只是憑據(jù)自己多年工作經(jīng)驗的一些體會,不具完整性,肯定也存在謬誤,但可具有實用性的參考價值!–
2012.2.29ISPF/PDFISPFISPF是在TSO環(huán)境下開發(fā)的一個系統(tǒng)產(chǎn)品,是為交互式應(yīng)用提供服務(wù)的會話管理器。ISPF在不同的主機(MVS、VM、VSE)系統(tǒng)環(huán)境中提供允許會話處理的控制和服務(wù)
。它以交互式的會話處理方式向終端用戶提供了一系列的菜單功能與Utility,大大方便了用戶在TSO環(huán)境下的工作。PDFPDF是一個幫助終端用戶在交互式環(huán)境下開發(fā)不同會話應(yīng)用的工具,其目的是在一個交互環(huán)境中增強程序員的開發(fā)功能與效率。PDF幫助程序員最大化地簡化公共編程任務(wù),避免乏味與復(fù)雜性地操作,它既可以結(jié)構(gòu)化、也可以使用傳統(tǒng)的編程技術(shù)來實施。ISPF/PDFISPF是為PDF和其它交互式應(yīng)用提供服務(wù)的基本產(chǎn)品,而PDF是在ISPF的控制和服務(wù)下以會話方式運行。Host
System
Services(MVS/TSO,VM,VSE)ISPFDialog
ManagementServicesDialogsProgramDevelopmentFacilityUserApplication
BUserApplication
AUserApplication
CISPF
EnvironmentISPF會話管理功能Dialog
Management
Function一個ISPF會話管理主要包括:Selection
Panelss_
面板的菜單選擇Function
commands
or
programs_
命令/程序的功能Data
entry
Panels
_
數(shù)據(jù)輸入屏幕Dialog
Starting
with
a
Selection
PanelSelectionPanelSelectionPanelSelectionPanelDataEntryPanelsDataEntryPanelsDialogFunctionDialogFunctionUtilities
Compilers
Options
Status
Help-ISPF
Primary
OptionOption
===>
3.40SettingsTerminal
and
user
parametersUser
ID.
:
XP991ViewDisplay
source
data
or
listingsTime.
.
.:
10:482EditCreate
or
change
source
dataTerminal.
:
32783UtilitiesPerform
utility
functionsScreen.
.
:
14ForegroundInteractive
language
processingLanguage.
:
ENGLISH5BatchSubmit
job
for
language
processingAppl
ID.
:
ISR6CommandEnter
TSOor
Workstation
commandsTSO
logon
:
ISPFPROC7Dialog
TestPerform
dialog
testingTSO
prefix:9IBM
ProductsIBM
program
development
productsSystem
ID
:
P390MVS
acct.
:
ACCT#Release
.
:
ISPF
5.510
SCLM11WorkplaceM
MoreSWConfiguration
Library
ManagerISPF
Object/Action
WorkplaceAdditional
IBM
ProductsRefList
RefMode
Utilities
HelpData
Set
List
UtilityOption
===>blank
Display
data
set
listV
Display
VTOC
informationP
data
set
list
PVPrint
VTOC
informationEnter
one
or
both
of
the
parameters
below:Dsname
Level
.
.
.
XP99Volume
serial
.
.Data
set
list
optionsEnter
"/"
to
select
optionInitial
View
.
.
.
1VolumeSpaceAttribTotal/
Confirm
Data
Set
Delete/
Confirm
Member
Delete/
Include
Additional
Qualifiers/
Display
Catalog
NameWhen
the
data
set
list
isdisplayed,
enter
either:"/"
on
the
data
set
list
command
field
for
the
command
prompt
pop-up,Selection
-Panel
_1Options
View
Utilities
Compilers
Help-----------------------------------------------------------------------DSLIST
-
Data
Sets
Matching
XP99 Row
1
oCommand
===>
Scroll
===>Command
-
Enter
"/"
toselect
action
Message
VoXP99.CLISTXP99.DISPXP99.DITPROFXP99.HCD.MSGLOGXP99.HCD.TERMXP99.HCD.TRACEXP99.ISPF.ISPPROFXP99.LOADXP99.SDSFOUTTLIOWOTSTSTSTSOSUSTSTS-fCl-DOOOO3OO*****************************
End
of
Data
Set
list
***********************EDIT
XP99.CLIST(TEST4)
-
01.17Command
===>Columns
00001
00072Scroll
===>
CSR******
*****************************Top
of
Data******************************000001
PROC
0000002
CONTROL
NOLIST
NOPROMPT
NOMSG
NOCONLIST000003
SUB:
SUBMIT
*
END(XX)000004
//&SYSUID.L
JOB
1,HXP,CLASS=A,MSGLEVEL=(1,1),MSGCLASS=A000005
//LISTC
EXEC
PGM=IEHLIST000006
//DD1
DD
UNIT=SYSDA,VOL=SER=TSO001,DISP=SHR000007
//SYSPRINT
DD
DSN=VTOC.LIST,DISP=SHR000008
//SYSIN
DD
DSN=XP99.CLIST(LISTV),DISP=SHR000009
XX000010 SET
&NU
=
99999000011
LOP:
SET
&NU
=
&NU
-
1000012 IF
&NU
NE
0
THEN
GOTO
LOP000013
ISPEXEC
BROWSE
DATASET('VTOC.LIST')
VOLUME(TSO001)000014
END******
****************************
Bottom
of
Data
****************************SelectionPanel_
2SelectionPanel_
3Data
EntryPanelsDialog
Starting
with
a
FunctionSelectionPanelSelectionPanelDataEntryPanelsDataEntryPanelsDialogFunctionDialogFunctionSTARTDisplaySelectSelectionPanelSelectionPanelDialogFunctionDialogFunctionSelectSelectISPF的調(diào)用是通過ISPSTART命令或定義一個ALIAS別名來實現(xiàn)的(鍵字參數(shù)用于定義第一個菜單顯示或得到接收控制的第一個會話功能).一個會話所含的要素Element
of
aDialog一個會話包括:Panel
Definition _
菜單定義Function _
功能Message _
信息File
Tailoring
Skeletons _
文件骨架裁剪Tables _
表格)選擇面板(Selection
Panel
or數(shù)據(jù)輸入屏幕(Data
Entry
Panel)表格顯示(Table
Display
Panel)_如在一個PO中對member的選擇僅顯示信息的屏幕(Information
Only
Panel)_
如指南性的TutorialPANEL
Definitions_面板定義s)
*
Data
entry
Panels*
Data
Display
PanelsPDF有五種基本面板類型:Selection
Panels(MemberSelection
listsTable
Display
Panels/*********************************************************************//*
ALLOCATE
ISPPLIB
DATASETS
*//*********************************************************************/ALLOCFI(ISPPLIB)SHR
DA(
+'CENTER.ISPPLIB' /*
LOCAL
*/
+..'SYS1.DGTPLIB'/*DFSMS*/+'DFSORT.SICEPENU'/*DFSORT*/+'FFST.SEPWPENU'/*FFST*/+'GDDM.SADMPNL'/*GDDM*/+'SYS1.SCBDPENU'/*HCD*/+'ICSF.SCSFPNL0'/*ICSF*/+'ISP.SISPPENU'/*ISPF*/+'SYS1.SHASPNL0'/*JES2*/+'RMF.SERBPENU'/*RMF*/+'ISF.SISFPLIB'/*SDSF*/+'SYS1.HRFPANL'/*RACF*/+'GIM.SGIMPENU'/*SMP/E*/+'ICQ.ICQPLIB'/*TSO/E*/+..'TCPIP.SEZNU')/*TCPIP*/PANELDefinitionsData
set..)ABCINIT.ZVARS=UTILHELP)BODYCMD(ZCMD)HelpUtility
Selection
PanelOption
===>
ZSAREA39)AREA
SAREA39LibraryData
SetCompress
or
data
set. Print
indrename,
delete,
browse,
edit
or
viewAllocate,
rename,
delete,
catalog,
uncMove/CopyDslistinformation
of
an
entire
data
setMove,
or
copy
members
or
data
setsPrint
or
display
(to
process)
list
ofPrint
or
display
VTOC
informationReset
statistics
for
members
of
ISPFlInitiate
outputDownload
ISPF
Client/Server
or
TransfeDisplay,
delete,
or
held
job
out5
Reset6TransferOutlistCommandsFormatSuperCSupermenSearch-ForCreate/change
an
application
command
tFormat
definition
for
formatted
data
ECompare
data
setsCompare
data
sets
ExtendedSearch
data
sets
for
strings
of
data15
Search-ForE
Search
data
sets
for
strings
of
data
ETablesUdlistISPF
Table
UtilityPrint
or
display
(to
process)
z/OS
UNI)INIT.ZVARS
=
'(ZCMD)’.HELP
=
ISR30000.ATTR(ZCMD)='PADC(USER)’)PROC&ZCMDWRK
=&ZIF
(&ZCMD
^=
&Z)&ZCMDWRK
=
TRUNC(&ZCMD,'.')&ZTRAIL=.TRAILIF
(&ZCMDWRK
=
&Z).MSG=ISRU000&ZSEL
=
TRANS
(TRUNC(&ZCMD,'.')1,'PGM(ISRUDA)
PARM(ISRUDA1)
SCRNAME(LIBUTIL)’2,'PGM(ISRUDA)
PARM(ISRUDA2)
SCRNAME(DSUTIL)’3,'PGM(ISRUMC)
SCRNAME(MCOPY)’4,'PGM(ISRUDL)
PARM(ISRUDLP)
SCRNAME(DSLIST)’5,'PGM(ISRURS)
SCRNAME(RESET)’6,'PGM(ISRUHC)
SCRNAME(
)’7,'PANEL(ISPUDL)
SCRNAME(DOWNLOAD)’8,'PGM(ISRUOLP)
SCRNAME(OUTLIST)’9,'PANEL(ISPUCMA)
ADDPOP
SCRNAME(CMDTABLE)’11,'PGM(ISRFMT)
SCRNAME(FORMAT)’12,'PGM(ISRSSM)
SCRNAME(SUPERC)’13,'PGM(ISRSEPRM)
SCRNAME(SUPERCE)
NOCHECK’14,'PGM(ISRSFM)
SCRNAME(SRCHFOR)’15,'PGM(ISRSEPRM)
PARM(S4)
SCRNAME(SRCHFORE)
NOCHECK’16,'PGM(ISRUTABL)
NEWPOOL
SCRNAME(TBLUTIL)’17,'PGM(ISRUUDL)
PARM(isruudlp)
SCRNAME(UDLIST)'..PANEL
Definitions例:主菜單面板定義ISP.SISPPENU(ISRUTIL)FUNCTION(or
Dialog
Fuction)FUNCTION可以是一個CLIST命令序列,也可以是一個程序,它執(zhí)行用戶所要求的工作。一個函數(shù)可以用CLIST來編寫,也可以用
PL/I、COBOL、FORTRAN、ASM
(匯編)來編寫,以前臺方式運行。每個函數(shù)可以由上述不同的語言書寫成裝入模塊。如在CLIST的書寫中,調(diào)用COBOL/FORTRAN等模塊。用戶可以用調(diào)用
FUNCTION
來為自已服務(wù),例:在CLIST/REXX中,使用ISPEXEC:ISPEXEC
DISPLAYPANEL(XYZ)
XYZ是用戶設(shè)計的一個屏幕調(diào)用一個程序,如在FORTRAN程序中書寫為:ISPLINK(‘DISPLAY’,‘PRG’)
PRG是一個程序/*************************************************************//*
ALLOCATE
SYSEXEC
DATASETS
*//*************************************************************/ALLOC
FI(SYSEXEC)SHR
DA(
+'SYS1.SBPXEXEC'/*OMVS*/+'BOOKMAN.SEOYCLIB'/*BOOKMAN*/+'FFST.SEPWSRC1'/*FFST*/+'ISP.SISPEXEC'/*ISPF*/+'ISF.SISFEXEC'/*SDSF*/+'DCE.SEUVEXEC'/*DCE*/+'DFS.SIOEEXEC'/*DFS*/+'INFOPRT.SAOPEXEC''LDAP.SGLDEXEC')/*/*INFOPRINTLDAP*/*/+FUNCTIONData
Setarg
dsname
format
.rc=listdsi(dsname)If
rc=0
Then
'ALLOC
REU
F(ISPMLIST)DA('''sysdsname''')SHR'If
rc=0
ThenDoSay
'Dsname:'sysdsname'
Volume:'sysvolume' Unit:'
sysunit'ALLOC
F(SYSPRINT)
REUSE
SP(10,50)TRACKS
NEW
DEL
DSO(PS)LRECL(121) BLK(4840)
RECFM(F
B)
RELEASE''ALLOC
F(SYSIN)
REUSE
SP(1)TRA
NEW
DEL
DSO(PS)
RECF(F)
LREC(80)'if
substr(format,1,1)='F'
then
fmt=',FORMAT';else
fmt=',DUMP'cmd.1='
LISTPDSDSNAME='sysdsname',VOL='sysunit'='sysvolume||fmtcmd.2='
LISTVTOC
DSNAME='sysdsname',VOL='sysunit'='sysvolume||fmt'EXECIO2
DISKW
SYSIN
(FINIS
STEM
CMD.'Address
ispexec'SELECT
PGM(IEHLIST)''LMINIT
DATAID(HLIST)
DDNAME(SYSPRINT)''BROWSE
DATAID('hlist')''LMFREE
DATAID('hlist')'address
tso
'FREE
F(SYSIN
ISPMLIST
SYSPRINT)'Endelse
say
'Error
allocating<'dsname'>'FUNCTION例:IEHLIST功能ISP.SISPEXEC(ISPMLIST)用戶提示信息,如出錯報告等。信息是按信息(消息)號進(jìn)行顯示的,所以只需對信息號進(jìn)行修改,很方便。注意,信息的修改是容易的,但對整個會話的變更則是相對復(fù)雜的。Message
Definitions/*********************************************************************//*
ALLOCATE
ISPMLIB
DATASETS
*//*********************************************************************/ALLOC
FI(ISPMLIB)SHR
DA(
+/*
LOCAL
*/
+'CENTER.ISPMLIB'..'CBC.SCBCIMG''''SYS1.SEDG'DFSORT.SICE'GDDM.SADMMSG''SYS1.SCBD''ICSF.SCSFMSG0''ISP.SISP'RMF.SERB''/*
C++/*
DFSMS/*
DFSORT/*
GDDM/*
HCD/*
ICSF/*
ISPF/*
RMF/*
SDSF/*
RACF*/
+*/
+*/
+*/
+*/
+*/
+*/
+*/
+*/
+*/
+'ISF.SISFMLIB''SYS1.HRFMSG'..'TCPIP.SEZA')/*TCPIP*/MessageData
SetISPA001
'Allocation
error
message'
.TYPE=N
NOKANA'ISPF
system
data
set
allocation
error
-
press
Enter
to
'
+'continue.'ISPA002
'List
allocate
err
msg
'
.TYPE=N
NOKANA'List
file
allocation
error
-
ISPF
will
operate
without
a
list
'
+'data
set.'ISPA003
'Log
allocate
err
msg
'
.TYPE=N
NOKANA'Log
file
allocation
error
-
ISPF
willoperate
without
a
log
'
+'data
set.'ISPA004
'LISTX
allocate
err
msg
'
.TYPE=N
NOKANA'Temporary
listing
data
set
cannot
be
allocated.'ISPA005
'CNTLX
allocate
err
msg
'
.TYPE=N
NOKANA'Temporary
control
card
data
set
cannot
be
allocated.'ISPA006
'EDITX
allocate
err
msg
'
.TYPE=N
NOKANA'Edit
backup
data
set
cannot
be
allocated.'ISPA007
'Open
errormessage'Error
trying
to
open
''&P7''.'/*
5694-A01
(C)
COPYRIGHT
IBM
CORP
1982,
2003'
.TYPE=N
NOKANAMessage
Definitions
例:ISP.SISP
(ISPA00)表格由會話自己生成,它是ISPF自己的索引表格,一個二維數(shù)陣列。Tables
表格/********************************************************************//*
ALLOCATE
ISPTLIB
DATASETS
*//********************************************************************/ALLOC
FI(ISPTLIB)
SHR
DA('&DSNAME'
+'CENTER.ISPTLIB'/*LOCAL*/+'SYS1.SBLSTBL0'/*IPCS*/+'SYS1.SBPXTENU'/*OMVS*/+'BOOKMAN.SEOYTENU'/*BOOKMAN*/+'SYS1.DGTTLIB'/*DFSMS*/+'DFSORT.SICETLIB'/*DFSORT*/+'SYS1.SCBDTENU'/*HCD*/+'ISP.SISPTENU'/*ISPF*/+'RMF.SERBT'/*RMF*/+'RMF.SERBTENU'/*RMF*/+'ISF.SISFTLIB'/*SDSF*/+'GIM.SGIMTENU'/*SMP/E*/+'ICQ.ICQTABLS''TCPIP.SEZ
NU')/*
TSO/E/*
TCPIP*/
+*/TABLEData
Set.馮IR:...
.&ISPKEYS
.?.5
...
...?...n.".?..|...JPHILP
?
.TN
..KEY1DEF
..KEY1LABD..KEY1ATR
..KEY2DEFB
9..KEY2ATRKEY3DEFKEY3LABKEY3ATRF
KEY4LAB
..KEY4ATR,..KEY5DEF
..KEY5LABR
..KEY6DEFv..KEY6LAB
..KEY6ATRN..KEY7DEFB
KEY7ATRKEY8DEFKEY8LABKEY8ATRF
?.KEY9LAB
%..KEY9ATR
..KEY10DEF`..KEY10LAB~TRz..KEY11DEF
..KEY11LABO..KEY11ATR
..KEY12DEFABKEY12ATRKEY13DEFKEY13LAB
..KEY13ATREF(..KEY14LAB
..KEY14ATR'..KEY15DEFb..KEY15LABTR
..KEY16DEF
..KEY16LAB
..KEY16ATRX..KEY17DEFABKEY17ATRKEY18DEFKEY18LAB?.KEY18ATR?EF?.KEY19LAB=..KEY19ATRf..KEY20DEF
..KEY20LABTR
..KEY21DEF{..KEY21LABY..KEY21ATR0..KEY22DEFABKEY22ATRKEY23DEFKEY23LAB?.KEY23ATR!EF^..KEY24LABg..KEY24ATR
..
..-.[.[.
.
.
.
.F.
.M.
.\.W.
.
.1.3.5.7.9?..?).
.
.
.].
.:.a.g.
.m.
.s.y.
.
.
.
.
.A.C.TABLE
Definitions
例:ISP.SISPTENU(ISPKEYS)當(dāng)ISPF在執(zhí)行一個會話時,在CLIST中可以生成一個JCL作業(yè),提交執(zhí)行之。Dialog
→
Skeletons
→
Output
FileFile
Tailoring
Skeletons
文件(骨架)剪裁/*******************************************************************//*
ALLOCATE
ISPSLIB
DATASETS
*//*******************************************************************/ALLOC
FI(ISPSLIB)SHR
DA(
+'CENTER.ISPSLIB'/*LOCAL*/+'SYS1.SBLSKEL0'/*IPCS*/+'BOOKMAN.SEOYSENU'/*BOOKMAN*/+'CBC.SCBCSKL'/*C++*/+'SYS1.DGTSLIB'/*DFSMS*/+'DFSORT.SICESLIB'/*DFSORT*/+'ICSF.SCSFSKL0'/*ICSF*/+'ISP.SISPSENU'/*ISPF*/+'ISP.SISPSLIB'/*ISPF*/+'ISF.SISFSLIB'/*SDSF*/+'SYS1.HRFSKEL'/*RACF*/+'GIM.SGIMSENU''ICQ.ICQSLIB')/*/*SMP/ETSO/E*/*/+TailoringSkeletonsData
Set)CM
SKELETON
PROC
FOR
BATCH
COBOL
(OTHER
SEQUENTIAL)
---)CM
---
ALLOCATE
THE
SEQUENTIAL
OBJECT
DATA
SET
---)CM)CM
$SEG(ISRJS02S)
COMP(BATCH)
PROD(MVS))CM
CHANGE
ACTIVITY)CM$L0=
COBOLIIM230860602020136:)CM$D1=
COBOLIIM310891107235501: DCR
173)CM)CM$L2=
QUALITYM320890606020136:
PL/I)CM OY08658
-
870902-
Steplib
statement
causes
MSGIEF212I.)CM
GT4045-SFGEXEC
PGM=IEFBR14,COND=(12,LE)DD
DSN=&ZDS..OBJ,DISP=(MOD,PASS),UNIT=SYSDA,SPACE=(TRK,(1,2))DD
DSN=&ZDS..OBJ,DISP=(MOD,PASS),UNIT=SYSDA,SPACE=(TRK,(1,2))//BR14//ALLOC//ALLOC..//EXPAND
EXEC
PGM=ISRLEMX,COND=(12,LE),// PARM=('COB,
,B,N,
,4,
,00,&ZJB2LANG,&ZJB2MMIX,&ZJB2DDIX',//
'&ZJB2YYIX,&ZJB2DLIM,&Z5UNIT')Tailoring
Skeletons
例:ISP.SISPSLIB(ISRJS02S)SS),SPACE=(CYL,(2,2)),
DSN=&&&&TEMP1//ISRLCODE
DD
DSN=&ZDSQMEM,DISP=SHR//ISRLEXPD
DD
UNIT=SYSDA,DISP=(NE)SEL &LID
=
&Z//ISR G
DD
SYSOUT=(&BCLA))ENDSEL)SEL &LID
^=
&Z//ISR G
DD
SYSOUT=*)ENDSEL)CM
---
COMPILE DATASET
---)CM Change
regionsize
for
DCR
173
from
512K
to
640K//COBOL
EXEC
PGM=IGYCRCTL,REGION=640K,COND=(12,LE),PARM=(&BVCOBM,)CM)CM'&BVCOB')INSERT
A
STEPLIBDD
CARD
HERE
IF
MODULEIGYCRCTLIS
NOT
IN
YOURSYSTEM
LIBRARY)CMSTEPLIB
DD
DSN= P,DISP=SHR
-
removed
for
OY08658)SEL &LID
=
&ZSYSOUT=(&BCLA)//SYSPRINT
DD)ENDSEL..會話機構(gòu)anization
of
a
DialogISPF提供了會話管理服務(wù)(
Dialog
ManagementServices
),它包括:Select
_選擇Display
_顯示Table
_表格File
tailoring
_文件Variable
_變量剪裁Dialog
Startingwith
a
SelectionPanelSelectionPanelSelectionPanelSelectionPanelDataEntryPanelsDataEntryPanelsDialogFunctionDialogFunctionDialog
Startingwith
a
FunctionSelectionPanelSelectionPanelDataEntryPanelsDataEntryPanelsDialogFunctionDialogFunctionSTARTDisplaySelectSelectionPanelSelectionPanelDialogFunctionDialogFunctionSelectSelectDialog
ManagementServices會話管理服務(wù)ISPSTARTCOMMANDControl
Flow
Between
ISPF Services
and
Libraries
,
Data
Sets,
or
FilesISPFINITIALIZATIONSELECTSERVICEDIALOGFUNCTIONControl
FlowData
FlowVARIABLESERVICESDISPLAYSERVICESTABLESERVICESFILETAILORINGSERVICESLOGGINGSERVICESDIALOGSERVICESPANELLIBRARYMESSAGELIBRARYDATATABLESSKELETONLIBRARYOUTPTFILESLOGFILESELECT是一個通過ISPF來使用的控制工具,它同時也可以通過一個會話請求來完成一個服務(wù)。當(dāng)一個用戶完成一個初始化的ISPF應(yīng)用時(如logon或調(diào)用一個命令過程),SELECT首先是通過初始化參數(shù)去選擇一個Panel。當(dāng)SELECT是由一個會話功能來調(diào)用時,它可以啟動一個新的面板層次的顯示,或者調(diào)用其它不具有顯示面板(菜單)的新的其它功能。SELECT
ServicesDisplayServices允許一個會話去顯示信息,或者去解釋來自用戶的應(yīng)答。有三種顯示服務(wù):DISPLAY
_
顯示一個面板(菜單),功能包括:初始化面板中的變量信息顯示(屏幕上的)帶有選擇信息的面板處理應(yīng)答、保存變量TBDISPL
_
顯示一個表格SETMSG
_保存ISPF寫給終端的信息,顯示在下一個面板上。Display
ServicesTableServices允許建立會話變量集,以便利的格式進(jìn)行與存取。一個表格是一個二維的信息向量,其中每一列與一個會話參數(shù)相對應(yīng),每一行包含了這些參數(shù)中的一個值。一個表可以是臨時的或的,一個臨時表生成在虛存中,當(dāng)處理完成后即被刪除。而一個性表將作為一個表庫(tablelibrary)的成員駐留在磁盤中。Table
Services例如:EMPSER-Emplyee
Serial
NumberLNAME -
Last
NameFNAME
-
NameIPHAPHNUMMiddle
InitialHome
Phone:Area
CodeHome
Phone:Local
Number設(shè)計的TABLE:EMPERLNAMEFNAMEIPHAPHNUM598304RobertsonRichardR301840-1224172397SmithSusanS301547-8465813058JonesHowardH919279-9911395733WardSamuelB919436-1000TBCREATE:當(dāng)要執(zhí)行處理時,生成一個新表,并打開它。TBOPEN:當(dāng)在執(zhí)行處理時,打開一個已存在的表。TBQUERY:保存一個已存在的表副本,不關(guān)閉它(即作一個備份)。TBCLOSE:關(guān)閉一個表,如果該表已作過修改,則保存一個(
的)備份。TBEND:關(guān)閉一個表,不做保存動作。TBERASE:從表庫中刪除一個
性表。Table
Service的操作注-1:一個臨時性的表可以由TBCREATE
來生成(無寫方式),由TBEND
或TBCLOSE
來刪除。注-
2:一個在虛存的
性新表,
由TBCREATE
通過寫方式來生成。當(dāng)通過TBSAVE
或
TBCLOSE
將其保存到磁盤中后,它即變?yōu)檎嬲淖?3:一個當(dāng)前已存在的駐留表。性表被打開并被讀入到虛存,將由TBOPEN
來完成,如果該表被修改了,則由TBSAVE
或TBCLOSE
對其產(chǎn)生一個備份副本進(jìn)行保留。如果沒有修改,則由TBEND
或TBCLOSE
將其在虛存的備份刪除之。TBADD:在表中加一個新行TBDELETE:刪除一行TBGET
:表中回找一行TBPUT
:修改當(dāng)前行TBMOD
:修改當(dāng)前已存在的一行,否則增加一個新行TBEXIT
:測試一個已存在的行TBSCAN:搜索一個表,尋找一個與變量(argument)相匹配的所在行,并定位到該行。TBSARG
:建立一個新的搜索自變量(配合TBSCAN使用)TBTOP
:
設(shè)置當(dāng)前行指針到頂端第一行之前部TBBOTTOM:設(shè)置當(dāng)前行指針到最后一行,并將該行中的變量傳送到變量池中(pool)TBSKIP:通過一個指定的行號將當(dāng)前行指針向前/后進(jìn)行移動,并將該行中的變量傳送到變量池pool中。TBVCLEAR
:將與表中變量相符的會話變量清空。Table
Service的行操作文件剪裁服務(wù):
一個庫中的骨架文件,生成當(dāng)前的裁剪輸出,它可以用來驅(qū)動其它的功能。這個服務(wù)獲取一個裁剪文件,其中包含了一個通用的以批處理方式執(zhí)行的JCL
作業(yè)流。這個服務(wù)為執(zhí)行某個指定的作業(yè)(JOB),填入一些變量值,產(chǎn)生一個特殊的語句集。File
Tailoring
ServicesFTOPEN:準(zhǔn)備文件骨架處理,不管這個臨時文件是否明確指定用于輸出。FINCL:指定使用某個骨架文件,并啟動剪裁處理.FTCLOSE:終止骨架處理。FTERASE:刪除任何由骨架文件所產(chǎn)生的輸出文件.File
Tailoring
Service操作注-1:剪裁文件是按記錄來的,如果在一個記錄中找到了任意一個會話變量名,則當(dāng)前的變量值將替換之。注-2:控制語句也可以包含在一個剪裁文件中,這些控制語句提供的有效功能是:建立會話變量嵌入其它的剪裁文件有條件地包含記錄使用變量,重復(fù)處理一個表中的每一行記錄。Variable
Services允許一個功能function去定義使用會話變量。一個會話變量是一個字符串?dāng)?shù)據(jù)的任何種類,如一個字,一個值,它用一個符號名來表示。變量長度范圍:0-32767B會話變量是會話功能function與ISPF服務(wù)間進(jìn)行通訊的主要
,它們也可以在功能之間進(jìn)行通訊。會話名字可以出現(xiàn)在面板菜單中、信息中以及剪裁的定義中,并且允許伴隨在功能之間的通訊中出現(xiàn)。Variable
Services例如:SET
&AAA=1ISPEXEC
DISPLAY
PANEL(XYZ)SET &CCC
=
&AAA
+
&BBB例中顯示了數(shù)據(jù)可以很方便地在一個Function功能與Display
service之間進(jìn)行通訊:變量AAA由CLIST生成,并賦值.display
service
隨之調(diào)用一個顯示面板xyz假定在所定義的面板xyz中包含了2個符號參數(shù),名字分別是AAA與BBB,則它們將被定義在非保護的輸入域中,將按如下顯示:Initial
value===>_AAAIncrement
===>_BBB此處的下劃線_
指示了一個輸入域的開始處,跟隨在后的是一個變量名。當(dāng)這個面板顯示后,第一個輸入域被初始化為1,第二個域顯示為空,因為變量BBB沒有賦值。也就是說,在調(diào)用display服務(wù)之前,將由會話功能來設(shè)置。假定現(xiàn)在用戶改變了第一個賦值為100,并在第二個域中輸入10,當(dāng)用戶敲入
ENTER鍵后,這兩個值將自動被保存起來,變量AAA則被修改為一個新值100,而BBB則由空變?yōu)?0。Display服務(wù)返回控制到Function功能,在CLIST的最后一條語句,生成一個變量CCC,值為110,它是AAA與BBB之和。VGET:從一個共享池(ashared
pool)或profile中獲取變量VPUT:修改其中的變量VDEFINE:定義一個功能變量VDELETE:移去所定義的功能變量VCOPY:備份一個變量VREPLACE:用備份變量替換一個變量VREST:重
能變量注-1:VGET、VPUT
可以由任何功能function
來調(diào)用它,其它的變量服務(wù)僅可使用程序模塊來調(diào)用,也就是說,它們在一個會話命令過程中并非適用于功能代碼。注-2:某些變量名由系統(tǒng)保留使用,它們提供操作環(huán)境的信息,所有保留變量名均以‘z’為開頭,以避免在會話開發(fā)中與其它會話變量名字
。Variable
Service操作PANEL一個panel的生成必須是在ISPF所連接的PLIB內(nèi).一個panel可以有幾個段,段之間的位置不可以隨便顛倒。)ATTR
特征段(可選):
定義特殊字符用來代替特征字%:
高亮(Protected
TEXT
HIGH
Intensity)表示用于不可鍵入的修改,即處于保護狀態(tài)+:
低亮(Protected
TEXT
LOW
Intensity)_
:
下劃線符表示非保護的,可鍵入的狀態(tài)(UnprotectedTEXT
INPUT
HIGH
Intensity)(高亮)注1:當(dāng)給出“%”,“+”,“_”三者其一時,可省去
)ATTR2:3270B終端有七種顏色)BODY
(必須給出):定義屏幕格式以及Panel域中的變量名)MODEL(Model
Section):
表顯示用,如ISPF
3.4進(jìn)入某個PO后,在瀏覽EDIT狀態(tài)下顯示MEMBERS)INIT(可選):初始化段(Initialization
section)在顯示前的準(zhǔn)備工作,分配初值(賦值)。)REINT(可選)
:
Reinitialization
Section
為再次顯示所做的準(zhǔn)備工作,如當(dāng)輸入?yún)?shù)出錯時,再次顯示。)PROC
處理段(ProcessingSection):在屏幕出現(xiàn)時需要做的一些工作,如當(dāng)輸入一個變量后,對其進(jìn)行檢查或者對其進(jìn)行解釋等。除了HELP命令外,其它的輸入均需要這個處理段,因為凡是鍵入
令,總是要有一個結(jié)果的。)END
結(jié)束段 (ENDSection):結(jié)束段不可缺,僅一行。在結(jié)束段后的任何信息均視為無效(不起作用)BODY段有兩種變量類型
(
IPSF始終對它們進(jìn)行
):ZCMD(輸入型)&ZUSERTIMETERMKEYS在body段,最大可顯示23行(其中一行用于提示信息)BODY段控制變量可以出現(xiàn)在初始化段,在變量前必須冠以‘.’.HELP=ISR00003
(地址)可將你新寫的一個HELP(ISR0003)放入某個HELP庫中(如放在ISR.VxRxM0.ISRPLIB中)。.CURSOR=DSN當(dāng)屏幕信息出現(xiàn)后,光標(biāo)所應(yīng)出現(xiàn)的位置(如果缺省,則出現(xiàn)在_ZCMD處),如:.CURSOR=DSN表示光標(biāo)出現(xiàn)在DSN處.CURSOR=3表示光標(biāo)落在DSN處INIT初始化段例:IF(.CURSOR
NE‘VOL’).CURSOR
=
DSN判光標(biāo)是否在VOL域上不在,則移到DSN域上.MSG=ISPE019表示信息庫中的成員(member)名=ISPE019,屏幕一經(jīng)出現(xiàn),該信息內(nèi)容即顯示出來:.RESP=
檢查屏幕的反映,一般有兩種形式:END/ENTER如:IF(.RESP=END)
或
IF(.RESP=ENTER).TRAL&ZHTOP&ZPRIM=YES/NO/空響鈴(一般置為不響狀態(tài),因為有些設(shè)備無響鈴功能,則會出錯)VPUT(A1,A2)
PROFILE把變量(A1,A2)放入POOL中,稱為PROFILE
variable
poolVGET(A1,A2)
PROFILE從POOL中取變量VPUT/VGET有三個操作數(shù)ASIS(缺省值):首先在SHARED中找,再到PROFILE中找。SHARED:僅當(dāng)Logon后,其中的參數(shù)才會生成
(
SharedVariable
Pool
)PROFILE(User
profile):參數(shù)將一直保留其中,即使Logoff后也保留。VPUT與VGET可以在高級語言(如FORTRON)中設(shè)置,用于傳遞ISPF中給出的變量如:CALL
ISPLINK('VGET','')用CLIST調(diào)用變量的方法:ISPEXEC
VGET(name_list){
ASIS /
SHARED
/
PROFILE
}Starting
Variables
Through
the
VPUT
/
VGET
ServicesFUNCTIONVARIABLESDEFINEDIMPLICITFUNCTIONVARIABLESDEFINEDIMPLICITFUNCTION
A
VPUT
FUNCTION
BVGETSHARED
VARIABLESUSER
PROFILE
VARIABLES語法:變量=值&A=‘
’&COUNT=字符&DSN='''SYS1.MACLIB'''其中''SYS1.MACLIB''雙引號表示DSN的內(nèi)容&BB=&CPROC
處理段例1:&A&B=='ABCDEF'TRUNC(&A,4)結(jié)果&B=ABCD例2:&C='3.2.4'&D=TRUNC(&C,'.‘)結(jié)果&D=3例3:&J=TRUNC(&ZCMD,‘.')例4:&E=TRUNC(&DSN,‘.’)例5:&F=TRUNC(&G,‘!')&H
=
.TRAIL若鍵入
令是‘3.4’,則3→&J假定DSN=XP99.JCL
則XP99→&E從&G中的‘!’處截斷,前半部送→&F后半部→&H關(guān)于
.TRAIL
:例:&C='3.2.4‘&E
=.TRAIL(&C,‘.’)結(jié)果
&E
=
2.4關(guān)于TRUNC:Variable
=
TRUNC(Variable,Value)變量
值一個變量分配給另一個變量,并按值進(jìn)行截斷。關(guān)于TRANS&REPL=TRANS(
&MOD
Y,YES
N,NO
*,'?'
)將變量&MOD的值翻譯后送入&REPL,而&MOD內(nèi)容不變?nèi)绻?MOD中的值為Y,則翻譯成YES后→&REPL為N,則翻譯成NO后→&REPL為空,則什么也不做為*,則將?→&REPL&REPL=TRANS(
&MOD
Y,YES
N,NO
**
)**的含義表示&MOD中的內(nèi)容是什么就送什么到&REPL中.例:&REPL=TRANS(&MOD
Y,YES
N,NO
MSG=ISP0243)若&MOD中的內(nèi)容非Y、非N則顯示其標(biāo)識號:ISP0243關(guān)于PFK變量=PFK(Value)例1
:
&X=PFK(HELP)Value=數(shù)字/命令查找PFK表,將HELP分配給第一個未分配的PFKnn者。例2
:
&X=PFK(13)假定PFK13已分配作為HELP,則可表示為:&X=HELP表示無值,為空例3
:
&X=PFK(
)關(guān)于LVLINE變量=LVLINE(AREA1)將最后一個可見行送入變量中,如果是分屏狀態(tài),則值為1/2屏幕的最后一行,如果不分屏,則變量值為最后一行(24)關(guān)于IF表達(dá)式為真的判斷IF
(&DSN=‘
’)例:IF(&OPT=1,2,5)只允許是‘=’或‘≠’這兩個操作數(shù)若變量是‘1,2,5’,則為真IF
(&A
NOT
=
AAA,BBB)若變量&A
不等于AAA,并且不等于BBB,則為真例:IF
(...)
表達(dá)式為真,則下一條語句將執(zhí)行,否則為假,…
尋找后面與之同一列的語句(如&X=5)
執(zhí)行之…&X=5關(guān)于&ZSEL&ZSEL
=
TRANS
(
TRUNC
(&ZCMD,'.'
)↓PANEL
(Panel_name)CMD
(Command)PGM(Prg_name)
PARM(...)
NOCHECK
關(guān)閉EXIT檢查例1:
鍵入3.4
則對"3"后面的部分進(jìn)行檢查,".4"
→.TRAIL中例2:
如果要在菜單中增加一個選項“9”,則:9,CMD(USDEVLP)
NOCHCK
選項9的標(biāo)題是USDEVLP注:新增內(nèi)容必須送入“ISR.xx.ISRPLIB”中,或自定義一個新ISRPLIB庫與你的Logon
PROC連接。檢查語句VERVER(變量[,NONBLANK],Keyword[,value...][,MSG=...])檢查當(dāng)前某些值與某些條件是否吻合,通常用于檢查用戶的輸入信息。NONBLANK:
輸入的必須為value(值),非空Keyword:
在它后面的值由Keyword來定-
MSG:
如果輸入的信息不符合要求,則按MSG所給出的信息來顯示,若MSG缺省,則ISPF按標(biāo)準(zhǔn)值顯示。VER檢查僅給出錯誤類型例1:VER
(&A,
NONBLANK
)
輸入的變量必須為非空VER
(&A,
ALPHA)輸入的變量必須是字符型(即含大、小寫字符,并含#,$,@
字符,不許有空)VER(&A,NONBLANK,ALPHA
)
將上面二條并為一條來書寫例2:VER(
&A,
NUM
)VER(
&A,
HEX
)VER(
&A,
BIT
)確保輸入的值是整數(shù):0_9確保輸入的值是十六進(jìn)制確保輸入的值是二進(jìn)數(shù)0/1VER(
&A,
'A/ANN'
)VER(&A,
NAME)VER(&A,
DSNAME)第1,3位必須是字符(
包含
#,$,@
)第2位必須是“/“第4,5位必須是非空數(shù)字前面的變量必須是合法的名字前面的變量必須是合法的數(shù)據(jù)集名字VER(&A,RANGE,1,500)
變量的范圍在1-500之間VER(&A,LIST,YES,NO,DSN)
變量值可以在后面全部列出來VER(&A,PIC,NNNN)
變量值按所規(guī)定的格式進(jìn)行驗證例如
對
VER(&A,
PIC,
NN-N)
91-1
應(yīng)該是正確的數(shù)據(jù)輸入格式COMMAND===>_EMPLOYEESERIAL:021789(NEW,UPDATE,ORDELETE)TYPE
OF
CHANGE
===>
NEWEMPLOYEE
NAME:LAST===>
WAN===>
ZECINITIAL
===>HOME
ADDRESS:LINE1===>
201203LINE2===>
PUDONGLINE3===>
KE
YUANROADLINE4===>
10-399HOME
PHONE:AREA
CODELOCAL
NUMBER===>
021===>
609-0390Panel
Definition%+%COMMAND
===>_ZCMD%EMPLOYEE
SERIAL:
&EMPSERLAST%===>_LNAME%===>_FNAME+++
TYPE
OF
CHANGE%===>_TYPECHG
+
(NEW,UPDATE,OR
DELETE)+
EMPLOYEE
NAME:+++INITIAL%===>_I++++++
HOME
ADDRESS:++++LINELINELINELINE%===>_ADDR1%===>_ADDR2%===>_ADDR3%===>_ADDR4HOME
PHONE:AREA
CODE%===>_PHA++++LOCAL
NUMBER
%===>_PHNUM
+Each
text
attribute
character
(%
/+
)
isfollowed
by
the
information
tobe
display.Substitutable
variables
consisting
of
adialog
variable
name
preceded
by
an
&,may
be
included
in
the
text.Each
input
attribute
character
(_)
isfollowed
Immedia y
by
a
dialog
variablename,with
no
intervening
ampersand.The
field
ends
with
a
(+)
,Which
indicates
theum
length
of
theinput
variable.)INIT.HELP
=
PERS032.CURSOR
=
TYPECHG)PROCVER(&TYPECHG,LIST,NEW,UPDATE,DELETE,MSG=EMPX201)VER(&LNAME,ALPHA)VER(&FNAME,ALPHA)VER(&I,ALPHA)
VER(&PHA,ALPHA)VER
(&PHNUM,PICT,‘NNN-NNNN’))ENDThe
panel
body
section
extends
to
the
“)INIT”
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年全自動變焦照相機項目資金申請報告代可行性研究報告
- 2024年變頻器柜體系統(tǒng)項目資金籌措計劃書
- 2025年河南省三門峽市單招職業(yè)適應(yīng)性測試題庫匯編
- 2025年湖北省荊門市單招職業(yè)傾向性測試題庫匯編
- 2025年黑龍江商業(yè)職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫一套
- 兒童樂園裝修合同
- 2025年度安全培訓(xùn)與操作規(guī)范服務(wù)協(xié)議
- 2025年度員工勞動合同終止及生活困難補助協(xié)議
- 2025陜西省安全員C證考試(專職安全員)題庫附答案
- 2025年度房屋贈與及物業(yè)管理權(quán)轉(zhuǎn)移合同
- 發(fā)展?jié)h語-初級讀寫-I-第八課
- 跨境電商基礎(chǔ)PPT完整全套教學(xué)課件
- 初中物理科技小論文【6篇】
- 蕉嶺縣幅地質(zhì)圖說明書
- 學(xué)院中層正副職民主測評表
- 不寧腿綜合征
- 檢修期間安全措施
- 2023年湖南中醫(yī)藥高等專科學(xué)校單招考試職業(yè)技能考試模擬試題及答案解析
- 八年級數(shù)學(xué)下冊同步練習(xí)(全冊)
- 安全生產(chǎn)條件核查表
- 冀教版六年級下冊數(shù)學(xué)全冊教案完整版教學(xué)設(shè)計(含教材分析、教學(xué)計劃及進(jìn)度表)
評論
0/150
提交評論