2017-06-19 113 views

回答

2
//STEP1.SYSIN DD * 

將傳遞線路中的數據之後的語句作爲插播廣告的數據記錄到SYSIN DD例如

//SYSIN DD * 
fred 
bert 
harry 

將導致三線時SYSIN打開和讀取輸入讀取。

//STEP1.SYSIN DD DSN=&SYSUID..COBOL(CBL0001),DISP=SHR 

將分配PDS/PDSE成員的數據集user.COBOL(其中用戶將是誰提交作業的用戶的用戶ID(即& SYSUID。解析爲提交者的用戶ID))的CBL0001到DD名稱SYSIN

//STEP1.SYSIN 

13759兩者,是說來覆蓋或添加SYSIN DD語句的程序步驟名稱STEP1(該過程本身會在前面的JCL被定義)。

區別在於SYSIN讀取的數據會有所不同(即來自不同的來源,它可能是相同的基礎數據),第一個是JCL語句後面的數據,第二個是數據保存在成員CBL001(兩者都可能是一個COBOL程序)。

隨着插播數據,如果/*是編碼數據將結束或如果DD語句是編碼或者如果沒有別的如下(如上所示)例如

//STEP1.SYSIN DD * 
fred 
bert 
harry 
/* 
...... more JCL here 

//STEP1.SYSIN DD * 
fred 
bert 
harry 
//STEP1.OTHER DD ......... 

代替* DATA可以例如使用(相同的結果如上述即三行)

//STEP1.SYSIN DD DATA 
fred 
bert 
harry 
/* 

在兩種情況下*或DATA可以指定使用DLM例如定界符

//STEP1.SYSIN DD *,DLM="%%" 
fred 
bert 
//harry 
%% 

(在這種情況下,第三行會//哈利)

+0

非常接近,但//STEP1.SYSIN DD&SYSUID..COBOL(CBL0001),DISP = SHR未分配文件。處置是SHR,意思是它試圖指定要使用的文件,並且該程序不需要獨佔使用該文件。其他那個很好的答案。 – SaggingRufus

+0

@SaggingRufus你正在談論分配空間,還有一個更多。將DATASET和DDNAME關聯到DATASET隨後可以從程序中打開的階段的整個過程通常稱爲ALLOCATION。例如 - 使用ALLOCATE命令或EDIT的ALLOCATE子命令(子命令的功能和語法與ALLOCATE命令相同)來動態分配要執行的程序所需的...數據集。 - https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0/com.ibm.zos.v2r1.ikjc500/dup0009.htm – MikeT

+0

也許一個更不可取/明確定義的分配是_Allocation是過程系統爲您的工作分配或分配I/O資源。 I/O資源是** ddname-數據集組合**,以及任何關聯的卷和設備。[分配概述](https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.1.0 /com.ibm.zos.v2r1.ieaa800/allocov.htm) – MikeT