Q
從文件讀取記錄
1
A
回答
1
您可以使用ICETOOL複製你的輸入文件的一個子集。
以下是JCL將第一個和最後10個記錄複製到另一個文件。我假設每個80字節的固定長度記錄。
您還必須更改JOB卡以符合您的大型機商店的要求。
//EXAMP JOB A400,PROGRAMMER
//STEP1 EXEC PGM=ICETOOL
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=INPUT,DISP=SHR
//T1 DD DSN=&&T1,DISP=(,PASS),UNIT=VIO
//T2 DD DSN=&&T2,DISP=(,PASS),UNIT=VIO
//T3 DD DSN=&&T3,DISP=(,PASS),UNIT=VIO
//SORTOUT DD DSN=OUTPUT,DISP=(NEW,CATLG),UNIT=SYSDA,
// SPACE=(CYL,(5,1))
//SYSIN DD *
COPY FROM(IN) USING(CTL1)
COPY FROM(T1) USING(CTL2)
COPY FROM(T1) USING(CTL3)
COPY FROM(T2,T3) USING(CTL4)
/*
//CTL1CNTL DD *
OUTFIL FNAMES=T1,OUTREC=(1,80,SEQNUM,8,ZD)
/*
//CTL2CNTL DD *
OUTFIL FNAMES=T2,ENDREC=10
/*
//CTL3CNTL DD *
SORT FIELDS=(81,8,BI,D)
OUTFIL FNAMES=T3,ENDREC=10
/*
//CTL4CNTL DD *
SORT FIELDS=(81,8,BI,A)
OUTFIL FNAMES=SORTOUT,OUTREC=(1,80)
//
第一組控制卡(CTL1CNTL
)增加了一個序列號來輸入記錄。
第二組控制卡(CTL2CNTL
)獲取前10個輸入記錄。
第三組控制卡(CTL3CNTL
)按相反順序對輸入記錄進行排序,並獲取前10個記錄(最後10個記錄)。
第四套控制卡(CTL4CNTL
)按照正確的順序對提取的記錄進行排序,並刪除第一套控制卡添加的序列號。
有關更多信息,請參閱IBM的DFSORT Application Programming Guide。
0
從2008年7月開始,ICETOOL擁有SUBSET。
//STEP1 EXEC PGM=ICETOOL
//SYSOUT DD SYSOUT=*
//IN DD DSN=your input
//OUT DD DSN=your output
//SYSIN DD *
SUBSET FROM(IN) TO(OUT) KEEP INPUT FIRST(10) LAST(10)
要知道您是否有2008年7月份可用,請在任何排序步驟中查看ICE201I消息。
ICE201I F RECORD TYPE ...
信件號後面的字母是F或更大,那麼你有2008年7月包括在內。
相關問題
- 1. 從文件讀取記錄
- 2. 從文本文件中讀取記錄
- 3. 只從Pagesize文件讀取記錄
- 4. 從Ada的文件中讀取記錄?
- 5. 如何讀取文件,多個記錄
- 6. 刪除JTable行讀取文件記錄
- 7. 從文本文件讀取,然後插入記錄到oracle表
- 8. 從文本文件中讀取多行固定寬度記錄
- 9. 從C#中的文本文件中讀取多條記錄
- 10. 從文本文件中讀取固定寬度記錄
- 11. 如何從warc文件中讀取記錄的子集
- 12. 將讀取的數據從文件放入記錄
- 13. 從具有固定的文件中讀取長記錄
- 14. Python日誌記錄:可以從文件讀取dictConfig嗎?
- 15. 如何從平面文件讀取數百萬條記錄?
- 16. 從Java平面文件讀取多個記錄
- 17. 從目錄中的文件讀取元標記
- 18. 從TFRecord文件中沒有正確讀取記錄?
- 19. 從j2me的csv文件讀取單個單元格記錄
- 20. 從Bash中的文件讀取並記錄Tokenize
- 21. Perl的 - 從配置文件中的多行記錄讀取
- 22. 從目錄中逐一讀取文件
- 23. 從目錄中逐一讀取文件
- 24. 從目錄讀取csv文件
- 25. 從Scala目錄中讀取文件
- 26. 從目錄中讀取文件名
- 27. php從根目錄讀取文件
- 28. 從目錄w/python讀取文件名
- 29. 如何從目錄中讀取文件
- 30. 從目錄中讀取多個文件
你應該在這裏添加更多的解釋。假設輸入記錄每個都是80個字節。您給給T1的文件添加一個序列號。抓住T2的前10條記錄。使用序列號將T1排序爲相反順序。抓住T1的第一條(最後一條)10條記錄給T3。合併T2和T3,對給出OUTPUT的序列號進行分類和丟棄。最終結果是原始輸入的第一個和最後10個記錄現在在OUTPUT中。沒有這種解釋,初學者可能很難弄清楚你在做什麼。雖然整潔的解決方案! – NealB 2010-06-15 16:00:40
@NealB:謝謝。我添加了解釋。我實際上假設輸入記錄是80字節,但在提交答案之前將其刪除。 – 2010-06-15 19:47:59