VSAM文件IO操作返回碼參考

VSAM Return Codes
00   -  SUCCESSFUL COMPLETION

   02   -  DUPLICATE KEY, NON UNIQUE ALT INDEX

   04   -  READ, WRONG LENGTH RECORD 

   05   -  OPEN, FILE NOT PRESENT
  
   10   -  END OF FILE

   20   -  INVALID KEY VSAM KSDS OR RRDS

   21   -  SEQUENCE ERROR, ON WRITE OR CHANGING KEY ON REWRITE

   22   -  DUPLICATE KEY

   23   -  RECORD NOT FOUND - (when we are trying to access a record with key)
                 or
           FILE NOT FOUND


   35   -  OPEN, FILE NOT PRESENT
          
           When we will use this code in our program?
           There are situations where file should be read if exists, write if it does not
           when you dont know whether file exists are not , first you will open
           file in I-O mode and check status code. if it is 35 then open that
           file for output file. other wise you will continue with your logic
 

   41   -  OPEN, FILE IS OPEN 

   42   -  CLOSE, FILE IS CLOSED 

   43   -  DELETE OR REWRITE & NO GOOD READ FIRST

   46   -  SEQUENTIAL READ WITHOUT POSITIONING

   47   -  READING FILE NOT OPEN AS INPUT/IO/EXTEND

   48   -  WRITE WITHOUT OPEN IN IO MODE

   49   -  DELETE OR REWRITE WITHOUT OPEN IN IO MODE

   92   -  LOGIC ERROR/OPENING AN OPEN FILE 
                 OR READING OUTPUT FILE 
                 OR WRITE INPUT FILE 
                 OR DEL/REW BUT NO PRIOR READ

   94   -  SEQUENTIAL READ AFTER END OF FILE 
           OR NO CURRENT REC POINTER FOR SEQ 

   96   -  MISSING DD STATEMENT IN JCL 

   97  -  OPEN OK, FILE INTEGRITY VERIFIED

          When we will use this in our programs?
          We use this code whenever we open the file, if status code is 00 or 97
          we will proceed with our logic, other wise, call error routine.
          Usaully, it may come when file was not closed.
          for example

          IF WS-FILE-STATUS NOT = '00' AND '97'
             PERFORM ERROR-ROUTINE
          END-IF.
           
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章