- CICS 教程
- CICS - 首頁
- CICS - 概述
- CICS - 環境
- CICS - 基本術語
- CICS - 核心
- CICS - 事務
- CICS - COBOL 基礎
- CICS - BMS
- CICS - MAP
- CICS - 介面塊
- CICS - 虛擬碼程式設計
- CICS - 輔助鍵
- CICS - 檔案處理
- CICS - 錯誤處理
- CICS - 控制操作
- CICS - 臨時儲存
- CICS - 互連通訊
- CICS - 狀態碼
- CICS - 面試問題
- CICS 有用資源
- CICS - 快速指南
- CICS - 有用資源
- CICS - 討論
CICS - 臨時儲存
CICS 中提供了不同的暫存區用於儲存資料或在事務之間傳輸資料。CICS 提供了五個儲存區域,我們將在本模組中討論這些區域。
COMMAREA
COMMAREA 的行為類似於暫存區,可用於將資料從一個程式傳遞到另一個程式,無論是在同一事務內還是在不同事務之間。它應該在 LINKAGE SECTION 中使用 DFHCOMMAREA 名稱進行定義。
公共工作區
CICS 區域中的任何事務都可以訪問公共工作區,因此必須由系統中所有決定使用它的事務商定其格式和用法。整個 CICS 區域中只有一個 CWA。
事務工作區
事務工作區用於在同一事務中執行的應用程式程式之間傳遞資料。TWA 只存在於事務期間。其大小在程式控制表中定義。
臨時儲存佇列
臨時儲存佇列 (TSQ) 是由臨時儲存控制程式 (TSP) 提供的功能。
TSQ 是一個記錄佇列,可以在同一 CICS 區域中的不同任務或程式中建立、讀取和刪除。
佇列識別符號用於標識 TSQ。
TSQ 中的記錄由稱為專案號的相對位置標識。
TSQ 中的記錄保持可訪問,直到整個 TSQ 被顯式刪除。
TSQ 中的記錄可以順序讀取或直接讀取。
TSQ 可以寫入主儲存器或 DASD 中的輔助儲存器。
WRITEQ TS
此命令用於向現有 TSQ 新增專案。此外,我們可以使用此命令建立新的 TSQ。以下是 WRITEQ TS 命令的語法:
語法
EXEC CICS WRITEQ TS
QUEUE ('queue-name')
FROM (queue-record)
[LENGTH (queue-record-length)]
[ITEM (item-number)]
[REWRITE]
[MAIN /AUXILIARY]
END-EXEC.
以下是 WRITEQ TS 命令中使用的引數的詳細資訊:
佇列由在此引數中提到的名稱標識。
FROM 和 LENGTH 選項用於指定要寫入佇列的記錄及其長度。
如果指定了 ITEM 選項,則 CICS 會為佇列中的記錄分配一個專案號,並將該選項中提供的 資料區域設定為專案號。如果記錄啟動一個新佇列,則分配的專案號為 1,後續的專案號依次遞增。
REWRITE 選項用於更新佇列中已存在的記錄。
MAIN/AUXILIARY 選項用於將記錄儲存在主儲存器或輔助儲存器中。預設為 AUXILIARY。
READQ TS
此命令用於讀取臨時儲存佇列。以下是 READQ TS 的語法:
語法
EXEC CICS READQ TS
QUEUE ('queue-name')
INTO (queue-record)
[LENGTH (queue-record-length)]
[ITEM (item-number)]
[NEXT]
END-EXEC.
DELETEQ TS
此命令用於刪除臨時儲存佇列。以下是 DELETEQ TS 的語法:
語法
EXEC CICS DELETEQ TS
QUEUE ('queue-name')
END-EXEC.
瞬態資料佇列
瞬態資料佇列本質上是瞬態的,因為它可以快速建立和刪除。它只允許順序訪問。
佇列的內容只能讀取一次,因為它在執行讀取後會被銷燬,因此得名“瞬態”。
它不能被更新。
它需要 DCT 中的條目。
WRITEQ TD
此命令用於寫入瞬態資料佇列,它們始終寫入檔案。以下是 WRITEQ TD 命令的語法:
語法
EXEC CICS WRITEQ TD
QUEUE ('queue-name')
FROM (queue-record)
[LENGTH (queue-record-length)]
END-EXEC.
READQ TD
此命令用於讀取瞬態資料佇列。以下是 READQ TD 的語法:
語法
EXEC CICS READQ TD
QUEUE ('queue-name')
INTO (queue-record)
[LENGTH (queue-record-length)]
END-EXEC.
DELETEQ TD
此命令用於刪除瞬態資料佇列。以下是 DELETEQ TD 的語法:
語法
EXEC CICS DELETEQ TD
QUEUE ('queue-name')
END-EXEC.