You are on page 1of 146

An introduction to ISPF

鄧詠文 Vincent Deng ywdeng@tw.ibm.com


msn: g38903018@ym.edu.tw
台灣國際商業機器股份有限公司
軟體事業處
Module 1: Primary Options
ISPF: z/OS Basic Interfaces

與主機溝通的幾種方式

 TSO/E
– TSO 是 Time Sharing Option/Extensions (TSO/E) 的簡稱,在 1960 年
代,由 2000 多名程式設計師開發出來
– 每個使用者都有一組 TSO ID/Password ,登入主機後,鍵入一些基本
的命令來與主機互動
 ISPF
– 執行於 TSO 之下,全名為 Interactive System Productivity Facility
– 使用者透過一些預先定義好的選單,選取所要執行的功能
 z/OS UNIX shell and utilities (USS - Unit System Service)
– 在 UNIX shell 的環境下,使用者可以撰寫一些 shell 腳本程式,或呼
叫一些公用程式,來與主機互動,執行所需的工作

3 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ISPF 的四大組件

ISPF

Dialog Manager

Program Development Facility

Client/Server

Software Configuration Library Manager

4 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dialog Manager 的六個元件


Dialog Manager 的功能是提供終端使用者與主機之間進
行對話的服務。其由下列六個元件組成
Dialog Manager

Functions

Panels

Messages

Tables

File Tailoring Skeletons

Dialog Variables

5 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dialog Manager 的六個元件 cont.


 Functions:
Function 是一個用來處理使用者請求的命令或程式,它可以呼叫 Dialog
Manager 提供的服務來顯示不同面板 (Panel) 或訊息 (Message) 、建立或
維護不同的暫存表格 (Tables) 、產生資料集合 (DataSet) 以及控制其運作
模式。 Function 可以是
–一個 REXX 或 CLIST 的程序
–其它可執行的執式
 Panel definitions:
Panel Definition Language 用來定義不同的 Panel 。它可以定義各個 Panel
的格式及內容。大部份的 Panel 都是用來提示使用者輸入資料的,使用者
透過在不同 Panel 輸入選項,以呼叫所要使用的功能

6 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dialog Manager 的六個元件 cont.


 Message definitions:
Message Definitions 用來定義要顯示給使用者的訊息格
式或內容。
 Table:
Table 是一個二維的陣列,裡面包含了 Dialog 運行時,
所產生的暫存內容。它可以當成一個暫存的存儲區,也
可以跨不同的 Session 被不同的應用程式所共用

7 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dialog Manager 的六個元件 cont…


 File tailoring skeletons:
Skeleton 是一些預先定義好的範本,透過代換 Dialog Variables 的
值,產生出不同的 output 。 File Skeleton 很常用來協助產生
Submit Job 時,所需要的 JCL dataset
 Dialog variables:
Dialog manager 提供一組服務來進行 variable 的管理,並且使用
variable 來作為 Dialog 應用程式的溝通方式。例如,一個 Dialog
應用程式由許多的 Panel 及 Function 組成,我們可以在 Function
的程式中,定義一些 Variable ,然後在其所對應的 Panel 中,使
用這些 Variable 來初始化 Panel 的顯示畫面,然後將使用者所輸
入的值,存在這些 Variable 之內

8 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Program Development Facility 的功能

 提供程式編輯、開發的功能,如
–編輯
–瀏覽
–檢視
 提供公用程式以
–顯示及列印資料集合的 Member List
–比對不同的資料集合,以及字串搜尋
–搬移、複製及列印資料集合及其 Member

9 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Software Configuration Library Manager 的功能

 SCLM 包含兩個功能性元件
–Library Manager :用來管理程式原始碼
–Configuration Manager :用來追蹤應用程式所有的軟體元
件,以及它們之間的關係
 主要應用於在 z/OS 上,以 COBOL 或 PL/I 來開發
程式
 與 SCLM Developer Toolkit 結合後,可以用於
Java/J2EE 程式的開發

10 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Client/Server – Workstation Agent Component

 讓 ISPF 可以執行於一般的 PC Workstation


 提供分散式的編輯環境
–可在 workstation 上編輯主機上的檔案
–可在主機上,編輯 workstation 上的檔案
 提供 GUI 化的 ISPF 選單功能
–Push button
–Check box
–Screen resize
–GIF images

11 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

GUI 模式的 ISPF 操作介面

12 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

主機上常用的兩種解譯式語言
 CLIST
–主要為一連串的 TSO 命令集合,也提供 I/O 、例外處理及
基本的數學及邏輯操作
–只能在 TSO/E 的環境中執行
 REXX
–是實作 System Application Architecture Procedure
Language 而成的一種高階程式語言,只要有解譯器就可執
行,不限定於 TSO 環境中
–可用來撰寫互動式的應用程式

execute correct <any> errors re-execute

13 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

一小段 REXX 程式

/* REXX */
the_number=5
say "I'm thinking of number between 1 and 10. What is it?"
pull the_guess

if the_number = the_guess then


say 'You guessed it!'
else
say 'Sorry, my number was: ' the_number say 'Bye!'

14 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

登入主機

15 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

進入 ISPF 畫面

•看到 Ready 提示後,輸入 ISPF 進入 ISPF 主選單

ISPF 和 PDF 是 ISRPCP 這個 module 的別名。當輸入


ISPF 、 PDF 或是 ISRPCP 時,實際上系統會執行這個命令
:
ISPSTART PANEL( 預設主 Panel 名稱 ) NEWAPPL(ISR)
而預設主 Panel 名稱通常為 ISR@PRIM
16 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

ISPF 主畫面

17 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ISPF 主畫面功能選項說明
 0 Settings: 修改 ISPF 環境參數
 1 View: 檢視或瀏覽資料集合的內容
 2 Edit: 編輯資料集合的內容
 3 Utilities: 提供一連串管理資料集合的公用程式,如搬移、複製、顯
示 VTOC 資訊、比較與搜尋資料集合內容…等
 4 Foreground: 以 Online 模式執行程式 .
 5 Batch: 以批次方式,執行程式。 ISPF 會協助產生批次作業需要的
JCL
 6 Command: 在此可呼叫 TSO 命令、 CLIST 及 REXX 程式
 7 Dialog Test: 測試獨立的 ISPF Dialog 元件,如
Panel 、 Message 、 Function… 等

18 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

 9 IBM Products: 執行系統安裝的其它 IBM 應用程式


 10 SCLM: 控制、維護主機上所開發的程式元件的元件 .
 11 Workplace: 以物件的方式,呼叫 ISPF 的功能
 X EXIT: 離開 ISPF 環境

19 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Panel 的格式

 Panel 是一組事先定義好的畫面,讓使用者輸入資
料。 ISPF 將 Panel 格式化成 24 行,每行 80 個
字元的畫面
 ISPF 有下列三種主要的 Panel
–Menu
–Data-Entry
–Scrollable data panel

20 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

1. 輸入選單選項
2. 在任一層次內,可輸入 =x.x 直接跳到需要的功能
Menu Panel 的格式
3. 可用分號 (;) 串接指令

21 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Data-Entry Panel 格式
使用者輸入要檢示的資料集合名
稱,讓 ISPF 開啟該資料集合

22 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Scrollable Data Panel 的格式


定義捲動單位

F7: 往上
F8: 往下
F10: 往左
F11: 往右

一個數字 (n): 一次捲動該 n 行


PAGE: 一次捲動一頁
DATA: 捲動比一頁少一行
HALF: 捲動半頁
CSR: 捲動到游標處

23 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

常用的 ISPF 命令

ISPF 提供了超過 80 個命令,下列為常用的命令


ACTIONS END PANELID START
CANCEL EXIT PFSHOW SWAP
CRETRIEV KEYS RETRIEVE TSO
DTEST NRETRIEV SPLIT TUTOR

下列為用來捲動畫面的指令
BACKWARD* BOTTOM** DOWN FORWARD**
LEFT RIGHT TOP* UP
* Alias for the UP command
** Alias for the DOWN command

24 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

設定功能鍵 ( 快速鍵 )

使用 KEYS 指令,可以設定現在的
快速鍵與呼叫功能的對應

使用 KEYLIST 指令,可以檢視系
統目前有那些 Keylist ,並且編輯
這些 Keylist 中,快速鍵的對應

25 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

使用 Help 指令

 Help 指令可以依據不同情況,顯示出不同說明
–Filed-level help
• 顯示游標所在欄位的說明
–Message help
• 針對 ISPF 顯示出的短訊息,顯示更詳細的說明
–Panel help
• 針對整個 Panel 的使用方式,提供說明
–Tutorial
• ISPF 的詳盡說明。在 Tutorial panel 中,輸入 i ,可以用
index 的方式,查找說明

26 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

HELP Panel 可使用的命令


BACK or B: 回上一頁
SKIP or S : 跳到下一個 Topic
UP 或 U : 回上一層
TOC 或 C : 顯示 Help 的目錄
INDEX 或 I : 顯示 Tutorial 的 index ,以 Index 方式搜尋

27 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Split 指令 --- 切割視窗


將游標移至適當處,按下
Split 命令,即可以游標所在
為分界,切割視窗

每個視窗將被視為一個獨立的
ISPF 工作階段。

28 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

使用 SWAP 命令,切換視窗
同一時間,只有一個分割視窗
是處於活動狀態的,要使用
SWAP 指令,來切換視窗

29 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

SWAP LIST 命令
SWAP List 命令可以顯示
現在有那些分割的視窗。
標示 * 的為目前使用的視
窗,標示 - 的則為另一個
視窗

30 © 2006 IBM Corporation


Module 2 Dataset 介紹及 ISPF View
Panel
ISPF: z/OS Basic Interfaces

Data Set Basic

 主機中的檔案稱之為 Dataset 。
TSO 環境支援多種不同的
Dataset ,其中最常用的為
Sequential 和 Partitioned
Dataset
 主機的檔案與一般 PC 檔案不同。
主機的檔案是由一筆一筆
Record 組成。比方說, JCL 的
Dataset 就是由一筆筆長度 80
個字元的 Record 所組成

32 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Sequential Dataset

 組成 Sequential
Dataset 的 Record
是依照順序存入檔案
中的。若要存取第 99
筆 Record ,就必需
從第一筆資料一直讀
取到第 99 筆

33 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Partitioned DataSet (PDS)

 Partitioned Dataset
由一個 Directory( 目錄 )
與很多 member 組成。其中
,每一個 member 就相當於
一個 Sequential
Dataset
 Directory 中儲存 PDS 中
,每個 member 的名稱,以
及它的相對位置

34 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

PDS 的好處

 Allocate 資料集合時,
最小的單位為一個磁軌
(Track) 。如果需要存放
很多小檔案,針對這些小
檔案都 Allocate 一個資
料集合,會造成空間的浪
費。
 此時若將這些小檔案
Allocate 成一個 PDS 中
的多個 member ,可節省
許多空間
A track is 56,664 bytes for a
3390 disk device

35 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset 命名

 Dataset 的標準命名由三個
Qualifier 組成,用 . 分隔,
分別代表
–High-Level Qualifier
–User Determined
Qualifier
–Data type
 每個 Qualifier 最多由 8 個字
元組成。檔名最多不超過 44 個
字元

36 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

PDS 的 Member

 PDS 除了標準的 Dataset 名稱之


外,還多個 member 的名稱來指定
要存取該 Dataset 下面的那個
member 。標示 member 的方式如
右圖,在 Dataset 名稱右方用括
號括住 member 名稱
 Member 名稱一樣有最多 8 個字元
的限制
 PDS 的命名方式與 Sequential
dataset 相同,因此無法以名稱
來區別 Sequential dataset
和 PDS

37 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

三種進入 View Panel 的方法

 在 Option 處輸入
1 。若在內層,可輸
入 =0
 使用上方的 Action
Bar 下拉式選單
(Menu->View)
 在 Option 處輸入
View 命令

38 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

View Panel 欄位簡介 輸入要檢視的 Dataset


名稱

Action bar 這裡也


可以選取功能

呼叫預先定義好的程
式,設定 Edit
session 的環境

設定新的 Edit
profile ,並以這個
新的 Edit profile 來
檢視資料
選擇要用 Browse 或
View mode 檢視資料
39 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

Dataset 名稱欄位

 你可以在 ISPF Library 處


,分別輸入 Dataset 三個
Qualifier 的名稱。 ISPF
會將這三個 Qualifier 組合
成 Dataset 名稱
 也可以直接在 Other
Partitioned,
Sequential dataset… 處
輸入 Dataset 名稱

40 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

搜尋 Partitioned Dataset

 若你要檢視的 dataset 是
PDS ,你可以在 ISPF
Library 處輸入 Member 名

 Member 名稱欄位可使用萬用
字元。比方說 IGY* 可以列
出所有以 IGY 打頭的 member

41 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Library Concatenation

 在搜尋 PDS 的 member 時,


若不知道該 Member 在那個
PDS 內,可在 ISPF
Library 的 Group 欄位,輸
入多個 Qualifier 進行搜尋

42 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

列出你開啟過的檔案

 若想要知道過去檢視過那些
Dataset ,可以使用 Action
bar 的 RefList 功能。

 在列表的左方,輸入 s ,以選
取該 Dataset

43 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Browse Mode 與 View Mode 的差別

 Browse mode 是將
dataset 內容,一段段讀進
記憶體中;而 View mode 則
將 dataset ,一次全部讀進
記憶體中
 View mode 下,可以使用
Line command ;而
Browse mode 則不行
 Browse mode 可以檢視
Undefined 的 Record
Format 的資料

44 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Member selection list

 若開啟的是一個 PDS 。則
ISPF 會顯示出 member
selection list 。此時只
需在要開啟的 member 左方用
S 選取開啟

45 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Member selection List 中,好用的命令

 FILTER 命令:可以過濾掉某些特定名稱的
member ,不讓他顯示,下列用法可以把 X 開頭的
member 過濾掉
FILTER NAME NE X*

46 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

搜尋功能 --- 使用 LOCATE 命令

 使用 LOCATE 行號,可以跳
到所指定的行號。如 LOCATE
50 ,可以跳至行號 000050

 也可以在 Line command


area ,設定標籤後,再用
LOCATE 指令尋找該標籤

47 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

搜尋功能 --- 使用 FIND 命令

 使用 FIND ‘ 字串’進行字串搜
尋。若字串中有空白,需用引號
將字串框起來。如右圖
 在 FIND 指令最末端,加上下列
參數,可以控制搜尋的方向
–NEXT :由現在位置,搜尋下個
符合字串
–PREV :由現在位置,搜尋前一
個符合字串
–FIRST :從頭開始往下搜尋
–LAST :從檔案尾端往上搜尋
–ALL : 計算檔案中總共有多少
個符合的字串

48 © 2006 IBM Corporation


Module 3 ISPF Edit Panel 及檔案編輯指令
介紹
ISPF: z/OS Basic Interfaces

ISPF Edit Panel

 Edit Panel 與 View


Panel 的外觀大同小異。在
Command/Option 輸入
=2 ,即可進入 Edit Panel
 使用上方的 Action Bar 下
拉式選單 (Menu->Edit)
 在 Option 處輸入 Edit 命

50 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Panel 的兩個下命令的地方


Primary command line 主要輸入與 Edit profile 相關的命

Line command field


主要用來針對檔案內
容進行操作

51 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Insert Line Command

 使用 Insert(I)
命令插入新行,用
法如下
–I 插入單行
–In 插入多行, n
為要插入的行數

52 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Delete Line Command

 使用 Delete 命令可以刪除
不要的行,用法如下
–D: 刪除游標所在這行
–Dn: 刪除游標所在處起算
n行
–DD :標示所要刪除的區塊

53 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Repeat Line Command

 使用 Repeat 命令重覆單行或
多行,使用方法如下
–R :重覆游標所在這行
–Rn: 重覆游標所在的行 n

–RR : 重覆一個區塊
 所重覆的內容,會直接被放到
原始游標所在之處後面

54 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Copy Line Command

 Copy 可以把複製所要的內容
,並將其貼到所要的地方,其
用法如下
–C: 複製一行
–Cn: 複製游標所在處,往
下數 n 行
–CC: 標示所要複製的區塊
 複製完後,游標移到需要位置
,按下 A ,會將複製的內容貼
到游標後面;按下 B ,則會貼
到游標前面

55 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

CREATE 命令

 使用 Create 命令,可以建立新的
dataset(member) ,並且將所複製的內容,貼上去

56 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

REPLACE 命令

 與 CREATE 功能類似,差別在於是要把內容覆蓋掉已存
在的 dataset

57 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

CUT 命令
 CUT 命令可以將複製的內容,複製到剪貼簿上,之後可以用 PASTE 命令將剪貼
簿的內容,貼到所要編輯的 dataset/member

58 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

COPY 命令

 COPY 命令可以將某個 dataset/member 的內容,複


製到正在編輯的 dataset 中

59 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Move Line Command

 Move 可以把搬移所要的內容,
並將其貼到所要的地方,其用法
如下
–M: 搬移一行
–Cn: 搬移游標所在處,往下
數n行
–CC: 標示所要搬移的區塊
 標示完後,游標移到需要位置,
按下 A ,會將標示的內容搬移到
游標後面;按下 B ,則會搬移到
游標前面

60 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

在 PDS 中建立新 Member

 Allocate 完 PDS 之後,要


新增 member 時,要到
Edit Panel 中,輸入要新增
的 member 名稱後,直接編輯
member 內容
 此時 ISPF 會在記憶體中建一
個空的工作區,編輯的工作階
段結束後, ISPF 會將資料寫
入磁碟中

61 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

跳出編輯的工作階段 --- Exit 與 Cancel 的差


 Exit 預設的動作會先儲存編
輯後的內容再跳出
 在 Edit profile 有個
AUTOSAVE 的屬性,把它設為
OFF 後,使用 Exit 跳出時,
會出現警告,而不會先儲存再
跳出
 Cancel 不會儲存,直接跳出

62 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Profile

 ISPF 透過 Edit Profile 來控制


編輯工作階段的一些屬性
 我們可以使用不同的 Edit
Profile 來編輯不同性質的
Dataset ,如用 COBOL 專用的
Profile 來編輯 COBOL 程式;用
JCL 專用的 Profile 來編輯 JCL
 開啟 Dataset 時, ISPF 會依據
LLQ 自動挑選合適的 Profile 。我
們也可以在 Edit Panel 的
Profile Name 欄位自行指定

63 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

如何顯示目前 Edit Profile 設定

 在命令列上輸入 PROFILE 命令
,即可顯示目前 Edit
Profile 設定
 輸入 PROFILE 名稱 可開啟
該名稱的 Edit Profile ;若
該 Profile 不存在,則會以目
前的 Profile 設定值,建立新
的 Profile
 若不想讓本工作階段所做的
Profile 修改儲存下來,輸入
PROFILE LOCK 命令
 在命令列上輸入 RESET 命令則
可將其隱藏

64 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Profile --- COL 命令

 COL 命令可以在編輯視窗上顯示尺規

65 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Profile --- TAB 命令

 TAB 命令可以設定定位點,當
按下 Tab 鍵後,可以直接跳至
定位點。
 這個功能對於寫 COBOL 或
Assembler 程式很好用,因
為這些程式對於程式段落的起
始位置有特殊要求
 ISPF 提供 Hardware TAB
及 Logical TAB 兩種使用方

66 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

設定 TAB 定位點

 在隨便一行的 Line
Command Area 處,輸入
TABS 命令後,可以用 *
標示定位點
 接著在 Command Line 處,
輸入 TAB ON 命令,啟用
TAB 功能

67 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

使用 TAB 功能

 直接使用鍵盤上的 TAB 鍵,按


下後游標就會跳至定位點之後
( 此為 Hardware TAB)

 在 Command Line 處輸入


TABS @ ,設定 Logical TAB
的特殊符號為 @
 在輸入新資料時,加入設定之特
殊符號, ISPF 會將特殊符號視
為 TAB 鍵,而移動游標

68 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Profile --- MASK 命令

 MASK 功能可以在每一個新插
入的行中,自動添加某些內容
 在 Line Command area 中
,輸入 MASK ,即可定義要自
動添加的內容

69 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Edit Profile ---NUMBER 命令

 NUMBER 命令可以控制編輯檔
案內容時,需不需要記錄行號
在檔案內
 使用 NUMBER ON 命令可以
啟用行號
 若要編輯的檔案原本已有行號
, ISPF 在開啟時該檔案時,
會自動設為 NUMBER ON

70 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

AUTONUM 和 RENUM

 AUTONUM ON 時, ISPF 會
在編輯時自動重排行號
 RENUM 指令可以手動重排行號
, RUNUM ON 則設定行號是以
100 為單位增加
 UNNUM 可以移除之前存在檔案
內的行號

71 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

設定編輯模式

 ISPF 提供許多不同的編輯模試,
讓你能夠客制化編輯環境,以下
介紹下列模式
–AUTOSAVE
–CAPS
–HEX
–PACK
–RECOVERY
–STATS
 要啟用 / 關閉這些編輯模式,在
上述命令之後加上 ON 或 OFF
即可

72 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

AUTOLIST 模式

 當進入 AUTOLIST 模式編輯檔


案,若檔案內容有任何更動,
在跳出 ISPF 時,會自動將更
改過後的檔案內容寫入 List
dataset 中

73 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

AUTOSAVE 模式

 AUTOSAVE 可以控制當按下
F3 跳出編輯模式時,要不要
將所做的更改先儲存下來

74 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

CAPS 模式

 當 CAPS 模式設為 ON 時,所有輸


入的資料都會自動轉換成大寫。
這對於編輯 JCL 或 COBOL 程式
很有用,因為這些程式都需用大
寫字元
 若要將原有檔案內容都更換成大
寫或小寫,可在 Line command
處,輸入 LC( 轉小寫 ) 及 UC( 轉
大寫 ) 。若要將多行轉大 / 小寫
,則在 LC/UC 後加上要更動的行
數。如 LC10 ,可以將游標以下
10 行都轉成小寫

75 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

HEX 模式

 HEX 模式可將檔案內容及其
EBCDID 編碼一同呈現

76 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

PACK 模式

 當 PACK 模式為 ON 時,儲存


檔案時,會自動進行壓縮以結
省 DASD 空間

77 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

RECOVERY 模式

 當 RECOVERY 設為 ON 時,在
編輯過程中, ISPF 會將所做
的變動記錄在 recovery
dataset 。若此時系統發生
損壞,在下次編輯該檔案時,
可以重做所做的修改
 當要使用 UNDO 的功能時,必
需先把 AUTOSAVE 設為 ON

78 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

STATS 模式

 當 STATS 設為 ON 時, ISPF
會維護 PDS 中 member 的統
計資訊,如 member 內容大小
、建立時間、最近修改時間…
等資訊

79 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

BNDS --- 設定編輯邊界

 輸入 BNDS Line command 後,可以用 < > 設定編輯


邊界,之後所有的 FIND 、 CHANGE 命令,只會對 <
> 框起來的區域有效

80 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

FIND - 字串搜尋

 在 Primary Command 處可使


用 FIND 進行字串搜尋。
 若所搜尋之字串包含空格,則需
用””標示字串,如
FIND “SET CMSTYPE”
 若要做區分大小寫的字串搜尋 ,
則在字串前加上 C ,如
FIND C”Set CMSType”
 搜尋時可使用 FIRST 和 LAST
關鍵字標示搜尋方向,如
FIND “SET CMSTYPE’ LAST
即可由檔案最後往上搜尋

81 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

CHANGE-- 取代字串內容

 使用方式為
CHANGE 原始字串 新字串
 若要更改所有的字串,在
CHANGE 命令最後,加上 ALL ,

CHANGE #globalcsi globalcsi
ALL

82 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

CHANGE-- 取代字串內容 -2

 要限定 CHANGE 命令的作用範


圍,可以結合之前介紹的標籤
功能,在 line command 處
定義好標籤,然後在 CHANGE
命令列後,標示要更動的範圍
,如
CHANGE #tvol TARGETVOL ALL .TOPLN
.BOTLN

83 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

全字相符的搜尋—使用 WORD 關鍵字

 在使用 FIND 或 CHANGE 時,


可在命令最後加上 WORD 關鍵
字,以進行全字相符的搜尋
 PREFIX 關鍵字則可指示進行
字首相符搜尋
 SUFFIX 關鍵字則指示進行字
尾相符的搜尋

84 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

EXCLUDE 命令—隱藏功能

 使用 EXCLUDE 指令可將檔案
內容中某些行隱藏起來,如
EXCLUDE FILE ALL
可以將所有含有 FILE 這個字
的行隱藏起來
 此功能可以與 FIND/CHANGE
合併使用。如
FIND AAA X ALL
可搜尋被隱藏的行裡面,有沒
有 AAA 字串
FIND AAA NX ALL
則搜尋沒有被隱藏的行裡,有
沒有 AAA 字串

85 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

X Line Command – 隱藏功能

 除了使用 EXCLUDE primary


command 外,也可以使用 X
這個 line command 標示要
隱藏的行數
–X :隱藏本行
–Xn: 隱藏本行往下數 n 行
–XX :定義隱藏的區塊

86 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

重新顯示被 EXLUCE 掉的行 -- RESET 命令

 使用 RESET 命令可重新顯示
被隱藏的行

87 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

重新顯示被 EXCLUDE 掉的行—使用 F, L Line command

 除了使用 RESET 命令外,也可


以使用下列 Line command 重
新顯示被 EXCLUDE 隱藏的行
–F: 重新顯示被隱藏的區塊
的第一行
–Fn :重新顯示隱藏區塊第一
行往下數 n 行
–L :重新顯示被隱藏的區塊的
最末行
–Ln: 重新顯示隱藏區塊最末
行往上數 n 行

88 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

刪除行 --- 使用 DELETE Primary Command

 DELETE 命令與 EXCLUDE 命


令可以合併使用,如
DELETE X ALL
可刪除所有被 EXCLUDE 掉的

DELETE NX ALL
則可刪除所有沒被 EXCLUDE
掉的行

89 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

縮行功能

 使用小括號這個 line
command 可以進行縮排
–(: 往左縮 2 個字元
–(n: 往左縮 n 個字元
–((n +(( :定義要縮排的
區塊,整個區塊往左縮 n 個
字元

90 © 2006 IBM Corporation


Module4 Utilities
ISPF: z/OS Basic Interfaces

Utility Panel

 Utility Panel 中集合了很


多 Dataset 的工具,如
Allocate
Dataset 、 Dataset
list 、 Dataset 的
Compare 和 Search… 等
 ISPF 主選單按 3 ,即可進入
Utility Panel

92 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Library Utility Panel

 在 Utility Panel 中選
1 ,即進入 Library
Utility Panel
 Library Utility 中,集合
了多項功能,依照應用對象可
分為 Dataset options 及
Member options

93 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset options

 C – 壓縮 PDS 。刪除 PDS 的


member 時,並不會把它佔用的空間
清除,利用此功能可以回收被佔用空

 X - 列印出 dataset 基本資訊,
以及 PDS 的 member 資訊到 List
dataset 中
 L - 格式化 dataset 內的內容,
並將其列印到 List Dataset 中
 I - 顯示 dataset 的屬性資訊
 S - 顯示 dataset 的簡短屬性資
訊 ,與 I 功能相同,差別在於對
PDS ,會顯示較少資訊

94 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

S 和 I 的差別

 S 顯示簡短訊息

 I 顯示詳細訊息

95 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ISPF List Dataset 與 Log Dataset

 List dataset 和 Log dataset 都是在 ISPF 作用階段中,動


態 Allocate 給使用者的 Dataset 。前者放置操作過程中要列
印的資訊;後者則放置 Log 資訊
 List dataset 預設檔名為 HLQ.SPF.LIST; 而 Log dataset
預設檔名為 HLQ.SPFLOG.LIST
 在跳出 ISPF 工作階段時, ISPF 會詢問對於這些 dataset 的處
理方式;若想在 ISPF 工作階段就處理這些 dataset ,可在 6.
TSO command 的 panel ,輸入
–LIST – 處理 List dataset
–LOG - 處理 Log dataset

96 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

LIST 命令

 輸入 LIST 命令後,若要檢視 LIST


dataset 的內容,選 3. Keep existing
dataset and continue with new
dataset 。

97 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Member options

 我們可以使用這些指令來操作
member
–E – 編輯 member
–V - 檢視 member
–B - 流覽 member
–D - 刪除 member
–R - 更名 member
–P - 列印 member 內容
到 list dataset

98 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset Utility
 在主選單選取 3.2 ,可進入
Dataset Utility 。這個 Panel
提供下列功能
–A –Allocate 新的 dataset
–R - 更名 dataset
–D – 刪除 dataset
–空白 – 顯示 dataset 的屬性資

–C – Catalog dataset
–U - Un-catalog dataset
–V – 使用 VSAM utility 來
Delete/Define VSAM
dataset
99 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

Allocate dataset

 輸入要 Allocate 的
dataset 名稱後,在 Option
處輸入 A
 橘色方框處為需填之欄位
(Block size 除外 )

100 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset allocation 屬性

 Space unit: 所 Allocate


空間單位
 Primary quantity:
dataset 獲得的初始空間大小。
若 Space unit 是 Track ,
Primary quantity 是 1 ,
表示此 dataset 之初始空間為
1 個 Track
 Secondary quantity :
dataset 空間不夠時,每次擴
充的數量

101 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset allocation 屬性

 Directory block: 定義 PDS 中


,要用幾個 block 的空間來放
directory 的資訊
 Record format: dataset
中, record 的格式
 Record length: record 的長度
 Block size: 每個 block 的大小
有多少個 Byte
 Dataset name type: dataset
的種類,空白表示為 Sequential
dataset

102 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Basic record formats

103 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Block size 與 空間使用率

 右圖為在 3390 device 上,


allocate record-length
為 80 個 byte 的 dataset
時,使用的 block size 和
磁碟空間使用率的關係

 一般來說,使用率超過 95% 就
算是很好的使用率了

104 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Directory block

 Directory block 是用來放置


PDS 中,每個 member 的資訊。若所
要 allocate 的 dataset 是
sequential dataset ,則此欄位
為零
 每個 Directory block 的大小為
255 個 byte 。一般來說,一個
block 可以放置 6 個 member
 對於一些非標準的 dataset ,因為
member 沒有放一些 ISPF 的統計資
訊,所以最多一個 Directory 可放
21 個 member
 PDSE 是原本 PDS 的延伸式,在
Allocate dataset 時,不需給
Directory block

105 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset allocation 屬性

 我們可以在 Allocate
dataset 時,加入
Expiration date 。設定之
後,在刪除 dataset 時,除
了會顯示 Confirm Delete
Panel 外,會再顯示另一個
Confirm Purge Panel ,
提示該 dataset 尚未過期

106 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset Utility --- Catalog

 在 ISPF 中 Allocate dataset 時,會


自動將該 dataset catalog 起來。不
過若在某些情況下,某些 Job 沒有成功
執行,可能會導致 Job 所 Allocate 的
dataset 沒有被 Catalog 起來。此時就
可以使用 C 這個命令來將其 Catalog 起
來;用 U 則可 Un-catalog dataset
 進行 Catalog 時,需要指定要將其
Catalog 在那個 Volume 下面,系統會
到該 Volume 去取得該 Dataset 的特性

107 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Catalog-- 記錄 Dataset 放置的位置

ISPF 建立的 Dataset 預設都會被 Catalog 起來


108 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

Catalog 的尋找次序
USER.TAPE.A1
IBMUSER.A2
SYS1.A1 SYSTEM.MASTER.CATALOG

Master Catalog

Data Set-SYS1.A1
or
HLQs (alias)
USERCAT.IBM IBMUSER...USER USERCAT.COMPANY
User Catalog User Catalog

Data Set with Data Set with


HLQ=IBMUSER HLQ=USER
Catalog Structure

volume (wrk002)
unit (3390) volume (wrk001)
unit (3390)

volume (012345)
IBMUSER.A2 IBMUSER.A1 unit (tape)
IBMUSER.A3 USER.A1 USER.TAPE.A1
SYS1.A1

109 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Move/Copy Utility

 在主要選單的 Option 處,輸


入 =3.3 ,即可使用
Utility 的功能

110 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Move/Copy Utility Panel

 Move/Copy Utility Panel 提供下


列功能
–C: 複製一整個 dataset ,或 PDS
中的 member
–M: 搬移一整個 dataset ,或 PDS
中的 member
–CP: 複製一整個 dataset ,或 PDS
中的 member ,並將其內容列印至
List dataset
–MP :搬移一整個 dataset ,或 PDS
中的 member ,並將其內容列印至
List dataset

111 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Move/Copy Utility Panel

 在上個步驟輸入要複製 / 搬移的
dataset 後,在這個 Panel 指定
目標的 dataset
 Replace like-named
members 若選取, target
dataset 若有同命的 dataset ,
會直接被蓋過去
 Process member aliases 若
選取,被複製的 member 及其
alias 也會被複製過去

112 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Move/Copy Utility Panel

 Sequential Disposition 是專門


給 sequential dataset 使用的。
設為 Mod ,則 dataset 內容會被加
到 target dataset 的尾端;若設
為 Old ,則 target dataset 的內
容會被蓋過去
 Pack Option 則設定 Copy 過去的
dataset 要不要壓縮。選擇
Default 則會使用來源 dataset 的
設定

113 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

DSLIST Utility

 DSLIST utility 是最常用


到的 utility 。在主畫面中
輸入 3.4 即可進入此
utility 。利用這個
utility ,我們可以瀏灠
dataset list ,檢視、編
輯、刪除以及更名 dataset

114 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Display Dataset List

 Display Dataset List 是這個


Panel 中最常使用的功能。如右圖所
示,輸入要查找的 dataset 名稱
( 可以使用萬用字元 ) ,在 Option
處不輸入任何指令,按下 enter
 輸入 dataset 名稱時,若同時指定
Volume Serial ,則會只在該
Volume 尋找 dataset 。
 若不輸入 dataset 名稱,只輸入
Volume Serial ,則會列出該
Volume 下的所有 dataset
 以上的方法,只要有輸入 Volume ,
ISPF 會直接到該 Volume 的 VTOC
中,尋找 dataset 的資料,否則會
找 Catalog

115 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset 萬用字元的表示方式

 用 * 來表示一個以上的 Qualifier 。 ** 則表示零個到多個


Qualifier ,如
–SYS1.*: 會列出 SYS1.PARMLIB,
SYS1.ZOS.PARMLIB 。但不會列出 SYS1
–SYS1.**: 會列出 SYS1.PARMLIB, SYS1.ZOS.PARMLIB
以及 SYS1 。與直接在檔名處輸入 SYS1 相同
 用 % 表示一個任何字元,如
–SYS%: 表示 SYS1,SYS2,SYS$... 等
–SYS%%: 表示 SYS11,SYS1$... 等
 這樣的萬用字元表示,也可用在 Volume Serial 欄位

116 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

用不同的 View 檢視 dataset list

 Volume – 在 dataset list


中主要顯示每個 dataset 存於
那些 volume
 Space – 在 dataset list 中
主要顯示每個 dataset 目前的
空間使用狀況
 Attrib – 在 dataset list
中主要顯示每個 dataset 的格
式屬性,如 record foramt…

 Total – 顯示上述所有的資訊
,以及最近被更動的時間等資訊

117 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

在 Dataset list 中使用 Line command


 在 ISPF 回傳的 dataset list 中,可以使
用下列 line command
– I: 顯示 dataset 詳細資訊
– S: 顯示 dataset 簡短資訊
– D :刪除 dataset
– R :更名 dataset
– C: Catalog dataset
– M :列出 PDS 中的 member
– P :列印 dataset 到 list dataset 中
– X :列出 PDS 的 member 資訊到 list
dataset 中
– CO :複製 dataset
– MO :搬移 dataset
– B :瀏覽 dataset
– E :編輯 dataset
– U: Un-catalog dataset
– Z :壓縮 PDS dataset ,收回被刪除
member 的空間

118 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

如果你記不了這麼多 Line command…

 在 Line command 處,輸入 / ,即可跳出命


令選單

119 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Dataset list 中,可使用的命令


 在顯示出來的 dataset list 的 command line ,
可使用下列命令
– APPEND :將別的 dataset 加入現行的 dataset
list
– CONFIRM :設定刪除 dataset 前,需不需提示
– EXCLUDE :隱藏含有某字串的 dataset
– FIND/RFIND :尋找檔名含有某字串的 dataset
– LC :叫出修改顏色顯示設定的 panel
– SORT: 指定要用那個欄位為依據,排序 dataset
list
– LOCATE :在 SORT 過後的 dataset list 中,跳
到某個 dataset
– MEMBER :尋找在 dataset list 中,有無某個名
稱的 member
– REFRESH :重新整理 dataset list
– RESET :重新顯示被隱藏起來的 dataset
– SAVE :把目前的 dataset list 寫到 List
dataset 或自己定義的其它 dataset
– SRCHFOR :在目前的 dataset list 中,尋找內
容含有某字串的 dataset

120 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

VTOC (Volume Table of Content) 的結構

121 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

顯示 VTOC (Volume Table of Content)

 在 Dataset List
Utility 中,輸入 V
command ,在 Volume
serial 輸入要檢視的
Volume 代號,即可顯示
該 volume 的 VTOC 內容

122 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

這顆 Volume 的 VTOC
資訊,如此顆 Volume
VTOC Information 劃分了多少個 Track 給
VTOC; 目前 VTOC 的
使用狀況,還剩多少
DSCBS 可存放 VTOC
的資訊

這顆 Volume 的基本資 這顆 Volume 目前還剩多少空間 ; 最大


料,如總共有多少 的連續性 Free track/cylinder 有多少
Track ;目前的空間使
用狀況 ; 一個 Cylinder
內有多少個 Track
123 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

比較及搜尋 Dataset 內容

 在 Utility panel 下,你可


以使用下列選項來做
dataset 內容的比對、搜尋
–SuperC(3.12) :比較兩個
Sequential dataset ,
或 PDS 中,二個 member 的
內容
–SuperCE(3.13) :
SuperC 的延伸,提供較多
的比較功能選項
–Search-For(3.14) :搜
尋檔案內容
–Search-ForE(3.15) :
Search-For 的延伸

124 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

使用 SuperC

輸入”新”檔案名稱

Enter

輸入”舊”檔案名稱

125 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

比對同一個 PDS 下內的兩個 member

 若要比對的兩個檔案內容是位於同一個 PDS 下的不同


member 的話,上個步驟按下 Enter 後,會出現類似下
面的 panel 。用 s 選擇第一個 member ,然後來相
對應的 Oldmem 欄位,輸入另一個 member 的名稱後,
按下 Enter

126 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

SuperCE Utility Panel


 下圖為 SuperCE 的 panel 。比 SuperC
多了一些選項。其中 Compare type 可
以讓你決定比較的方式
–File: 只比對檔案的 hash value ,
看看檔案大小有沒有不同
–Line: 以行為單位,一行一行進行比

–Word: 以單字為單位,進行比較
–Byte: 一個個 byte 進行比較

127 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Search-For

 Search-For
utility 的
panel 如右圖,輸
入要搜尋的字串以
及要搜尋的
dataset 後,按下
enter

128 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

若要搜尋多個字串…

若要搜尋多個字串,勾選
panel 最下方的 Specify
additional search strings

按下 Enter 後,即可在此
視窗設定多個搜尋字串

129 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Search-ForE

在此輸入要搜
尋的 dataset

在此輸入要搜尋的字串。
若要區分大小寫,將字串
輸入 Asis 處;若不區分,
則輸入 Caps

Listing DSN 儲存搜尋結果


Processing options 可以指示搜尋如何進行
Statements Dsn 可以使用事先儲存下來的搜尋
指令進行搜尋
130 © 2006 IBM Corporation
ISPF: z/OS Basic Interfaces

可以使用的 Processing Options

131 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

編輯 Process Statement

 游標移至 Options 處按下


Enter ,在選單中選取
1. Edit Options ,即
可進入下圖所示視窗,編輯
search statement 。儲
存完後,可重用這些
search statement 在未
來的搜尋

132 © 2006 IBM Corporation


Task Description
ISPF: z/OS Basic Interfaces

Using the Allocate Command

 Provide input to a program from:


–An existing dataset
–More than one dataset
–Your terminal
 Direct output from a program to :
–A dataset that you specify
–A system output(SYSOUT) dataset
 Create a new dataset

134 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

TSO 的本質是一種特殊型式的批次作業

 在 SDSF 中,可看到以你 ID 為名稱的 Job ,那就是 TSO 工作階


段的 Job
 若有權限,你可以看到那個 JOB 的 JCL 內容,它是呼叫一個叫
IKJEFT01 的程式,它的功能是 Terminal Monitor
Program ,它可以 monitor 你在前端介面的動作,而做出回應
 ISPF 則是執行在 TSO 下的一個程式,一般來說 System
Programmer 會對環境進行設定,讓使用者一完成 TSO 登入,
就立即呼叫 ISPF 的程式

135 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

TSO Logon Procedure


 在登入 TSO 時,有個叫作 Procedure 的欄位,它的
功能就是指定 TSO 登入時,所要 Submit 的 JOB
JCL ,我們把它叫做 Logon Proc

136 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

登入過程

Logon Procedure

Logon Script

Logon Command
ISPF session
TSO session TSO session TSO session

137 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

LOCON PROC 內容
1 //KC02077 JOB 'ACCT#',REGION=32768K
2 //IKJACCNT EXEC IKJACCNT
Terminal
XX***************************************************
Monitor
XX* Program
XX* ISPF FULL-FUNCTION LOGON PROC
XX*
XX*************************************************** TSO 登入完成後,
3 XXIKJACCNT EXEC PGM=IKJEFT01,REGION=0M,DYNAMNBR=500, 第一個執行的程式
XX PARM='%ISPFCL' ,通常是由 CLIST
4 XXSYSUADS DD DISP=SHR,DSN=SYS1.UADS 或 REXX 所寫成,
5 XXSYSLBC DD DISP=SHR,DSN=SYS1.BRODCAST 稱為 Logon Script
6 XXSYSPROC DD DISP=SHR,DSN=USER.CLIST
7 XX DD DISP=SHR,DSN=ADCD.Z19.CLIST
8 XX DD DISP=SHR,DSN=SYS1.MARIST.SYSPROC 到 USER.CLIST 這個 dataset 去找
9 XX DD DISP=SHR,DSN=TOOLS.MARIST.CLIST ISPFCL 這個 Logon Script ,呼叫
10 XX DD DISP=SHR,DSN=ISP.SISPCLIB ISPF 並設定 ISPF 環境

138 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Accessing an Existing Dataset


Example:
ALLOCATE DA(“dataset_name”) FI(sysin) SHR

DA(DATASET):
Specify dataset name you want to open/create

FI(FILE):
Specify DDNAME that connect this dataset to
your program or utility

139 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Use the ALTLIB command to:

 Define alternative application-level libraries of


REXX execs or CLISTs.
 Indicate that user-, application-, and system-level
libraries of REXX execs and CLISTs are being
searched.
 Exclude one or more library levels (user,
application, system) from being searched.
 Reset the search order to the system level.
 Obtain a display of the search order that is in
effect.

140 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Search Order of User, Application and System


Level Libraries

141 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ALTLIB 命令
 ALTLIB 指令是用來設定系統要到那些 dataset 尋找
REXX 或 CLIST 使用方法如下
ALTLIB ACTIVATE USER(CLIST)
 參考下表,上令指令的 USER(CLIST) 會讓系統把
SYSUPROC 這個 DD append 到指令的搜尋順序中

142 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ISPF 的 LIBDEF 命令

 LIBDEF 命令可以讓你把你要的 dataset 附加到


ISPF 環境 dataset 中
LIBDEF ISPPLIB DATASET
ID('KC02077.CUSTISPF.PANELS')
 上述指令就是把 KC02077.CUSTISPF.PANELS 這個
你所定義的 Panel dataset 附加到 ISPPLIB 用來
放置 ISPF panel 的 DD 中

143 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

ISPF 的 DISPLAY 指令

 DISPLAY 指令可以讓你叫出某個 Panel


DISPLAY PANEL(PANEL1)
 上述命令會讓你叫出名為 PANEL1 的
Panel , ISPF 在收到這個命令後,會到 ISPPLIB 這
個 DD 所定義的 dataset list 中尋找有沒有叫做
PANEL1 的這個 Panel definition

144 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

EXEC command

EXEC DATASET_NAME {EXEC|CLIST}


 EXEC 這個 TSO 命令可執行 CLIST 及 REXX 。它根據下面邏
輯判斷所給的 dataset 要當成 REXX 或 CLIST 執行
–若 dataset_name 不是 full qualified( 沒有用’ ‘ 框住 )
•若後面不給 EXEC ,會在 dataset 名字後方,再 append
CLIST( 預設值 )
•若後面給 EXEC ,會在 dataset 名字後方, append REXX
–若 dataset_name 是 full qualified( 用’ ‘ 框住 )
•若後面不給 EXEC ,會檢視該 dataset 內第一行有沒有 /*
REXX*/ 。若有,則當成 rexx 執行;反之當成 clist 執行
•若後面給 EXEC ,直接當成 rexx 執行

145 © 2006 IBM Corporation


ISPF: z/OS Basic Interfaces

Usful link

 http://www-03.ibm.com/systems/z/os/zos/bkserv

 http://cid-
ca61fa1581cee757.skydrive.live.com/brows
e.aspx/%E5%85%AC%E9%96%8B/ISPF
%20%E6%95%99%E8%82%B2%E8%A8%93%E7%B7%B4

146 © 2006 IBM Corporation

You might also like