Assembly / HLASM · Abend code
What does System Completion Code S001 mean in Assembly / HLASM?
Raised when a GET, PUT, or CHECK macro hits an I/O error during a QSAM, BSAM, BISAM, or BDAM operation and the DCB has no SYNAD exit to handle it, or EROPT was left at its default ABE setting. Typical triggers include reading past end-of-file without a proper end-of-data check, writing to a file opened for input, or a physical block that fails a length or validity check on the device.
Raised when a GET, PUT, or CHECK macro hits an I/O error during a QSAM, BSAM, BISAM, or BDAM operation and the DCB has no SYNAD exit to handle it, or EROPT was left at its default ABE setting. Typical triggers include reading past end-of-file without a proper end-of-data check, writing to a file opened for input, or a physical block that fails a length or validity check on the device.
Add a SYNAD routine or set DCB EROPT=ACC/SKP if the condition is expected, verify OPEN mode matches how the program actually uses the file, and check the accompanying IEC020I message's return code before assuming a hardware fault.