|
2008/7/11 上午 05:03:06
請教各位前輩最近小弟在移轉系統,遇到需要將Cobol的DAT資料轉入SQL的問題因此寫了一個Cobol的轉檔程式,在執行後發生錯誤訊息cobol i/o error 39.03 on saf007 file c:\cobol\test\saf007.dat 小弟在網上查詢cobol i/o error 39,03是輸出輸入問題"所定檔案組織之RECORD最大的長度與實際檔案最大長度不能配合"但小弟查看了FD檔後也算過欄位因該沒錯,不知道是小弟程式有錯,請各位前輩救命一下
IDENTIFICATION DIVISION. PROGRAM-ID. README.
/////////* 解說表 */////////
ENVIRONMENT DIVISION. CONFIGURATION SECTION. SOURCE-COMPUTER. IBM. OBJECT-COMPUTER. IBM. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT SAF007 ASSIGN TO DISK "SAF007.DAT" ORGANIZATION INDEXED ACCESS DYNAMIC RECORD KEY SA007-KEY ALTERNATE RECORD KEY SA007-A-KEY. SELECT TRSAF007 ASSIGN TO DISK "TRSAF007.TXT" ORGANIZATION IS LINE SEQUENTIAL. DATA DIVISION. FILE SECTION. COPY SAF007.FD. FD TRSAF007. 01 TRSAF007-REC PIC X(192). WORKING-STORAGE SECTION. 77 EOF PIC X. 01 ADDRESS. 02 SA007-YM-O PIC 9(04). 02 SA007-ID-O PIC X(10). . . . . . . . . 02 SA007-HOUSE-O PIC X(12). 02 SA007-ACCOUNT-O PIC X(12).
PROCEDURE DIVISION. MAIN-RTN. MOVE N TO EOF. OPEN INPUT SAF007, OUTPUT TRSAF007. DISPLAY START THE PROGRAM HAHA. PERFORM A100-RTN UNTIL EOF = Y. CLOSE SAF007 TRSAF007. STOP RUN. A100-RTN. MOVE SA007-YM TO SA007-YM-O. . . . . . . MOVE SA007-HOUSE TO SA007-HOUSE-O. MOVE SA007-ACCOUNT TO SA007-ACCOUNT-O.
WRITE TRSAF007-REC FROM ADDRESS. READ SAF007 NEXT RECORD AT END MOVE Y TO EOF.
|
|
|
2008/7/15 上午 11:29:30
看你的程式除了 DISPLAY START THE PROGRAM HAHA. 這行我不知是做什麼外,都沒問題, cobol i/o error 39,03是檔案長度錯誤問題也沒錯, 我建議你寫一支TEST.CBL來OPEN FILE,CLOSE FILE 來確認你的SELECT 和 FD 與實際檔案是否一致
|
|
|
2008/7/31 上午 10:03:52
39,03指的是檔案格式不合,而其不合的可能是檔案長度,也可能I NDEX不符.而您的問題應在檔案INDEX上,即文字檔不應有INDEX.而且其ORGANIZATION 與ACCESS MODE都不對.您修改如下看看.
ORGANIZATION IS LINE SEQUENTIAL ACCESS MODE IS SEQUENTIAL
|
|
|
2008/8/14 上午 01:59:23
謝謝各位大大的教導,小弟最後的做法是去看Cobol的程式查尋該DAT檔的產生來原,最後發現是由其他的多個DAT匯入,我就依這一個規則將資料匯出到SQL,謝謝大大門的幫忙
|
|
|
|
|
|
COBOL |
 |
|
|
專家等級 |
評價 |
|
|
一代宗師 |
10000 |
|
|
曠世奇才 |
5000 |
|
|
頂尖高手 |
3000 |
|
|
卓越專家 |
1500 |
|
|
優秀好手 |
750 |
|
|
|
|
|
|
|
|
|
Microsoft Internet Explorer
6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2018 程式設計俱樂部 http://www.programmer-club.com.tw/ |
|
|