1

入力行順ファイルを開く際のエラー処理コマンドとは?

私は試した、

OPEN INPUT CUSTOMER-FILE
INVALID KEY/ON ERROR
DISPLAY "NO FILE FOUND".

しかし、それを機能させることができませんでした。

ありがとう。

4

2 に答える 2

3

FILE-CONTROL で、FILE STATUS 句をファイルの SELECT に追加し、PROCEDURE DIVISION で、指定したファイル ステータス変数の値を、各ファイルのやり取りの後に文書化された値と照合します。

于 2014-08-08T11:46:58.227 に答える
0

ファイル ステータスを使用することに同意します。より柔軟で、すべてのエラーを 1 つのソリューションで処理できます。必要なコードのほとんどは次のとおりです。

FILE-CONTROL.                                                
    SELECT  FILENAME  ASSIGN  TO  FILENAME                 
                        FILE STATUS IS WS-FS-FILENAME.       
*I  used WS-FS-FILENAME so I know it's declared in Working Storage and connected to File *Section.

DATA DIVISION.                                               
FILE SECTION.                                                

FD  FILENAME            RECORDING  ....                         
                        BLOCK      ...                        
                        RECORD     ....                       
                        LABEL      RECORD    ....        
                        DATA       RECORD    ...
                        .....  

01  FILENAME-REC         PIC X(N).




WORKING-STORAGE SECTION.                                       
01  WS-FS-FILENAME   PIC XX.   

==================================================


OPEN OUTPUT FILENAME.                        
IF WS-FS-FILENAME NOT = '00' THEN            
   DISPLAY 'ERROR OPENING FILENAME'          
   DISPLAY 'ERROR CODE IS : ', WS-FS-FILENAME
   PERFORM EXIT-WITH-ERROR                        
END-IF.                                     

WRITE FILENAME-REC.                                   
IF WS-FS-FILENAME NOT = '00'                          
   DISPLAY 'WRITE ERROR ON FILENAME. ' 
   DISPLAY 'STATUS :' WS-FS-FILENAME                  
   PERFORM EXIT-WITH-ERROR                                
END-IF. 

など、読んだり、閉じたりします。

特定のエラー コードは、Cobol のドキュメントにも記載されています。

于 2014-08-29T12:42:09.347 に答える