VALIDATE-STATUS is a special register or data item that contains the result of a VALIDATE operation. It provides status codes indicating whether validation succeeded or failed, allowing programs to handle validation errors appropriately.
VALIDATE-STATUS usage patterns and status code checking for different validation scenarios.
123456789101112131415IDENTIFICATION DIVISION. PROGRAM-ID. VALIDATE-STATUS-EXAMPLE. DATA DIVISION. WORKING-STORAGE SECTION. 01 CUSTOMER-AGE PIC 9(3) VALUE 25. 01 VALIDATE-STATUS PIC 9(2) VALUE 0. PROCEDURE DIVISION. VALIDATE CUSTOMER-AGE IF VALIDATE-STATUS = 00 DISPLAY "Validation successful" ELSE DISPLAY "Validation failed with status: " VALIDATE-STATUS END-IF STOP RUN.
Basic usage of VALIDATE-STATUS to check validation results.
123456789101112131415161718192021222324252627282930313233343536373839IDENTIFICATION DIVISION. PROGRAM-ID. MULTIPLE-VALIDATE. DATA DIVISION. WORKING-STORAGE SECTION. 01 CUSTOMER-DATA. 05 CUSTOMER-AGE PIC 9(3) VALUE 25. 05 CUSTOMER-NAME PIC X(30) VALUE "JOHN DOE". 05 CUSTOMER-EMAIL PIC X(50) VALUE "john@example.com". 01 VALIDATE-STATUS PIC 9(2) VALUE 0. PROCEDURE DIVISION. MAIN-LOGIC. VALIDATE CUSTOMER-AGE IF VALIDATE-STATUS NOT = 00 DISPLAY "Age validation failed: " VALIDATE-STATUS GO TO ERROR-EXIT END-IF VALIDATE CUSTOMER-NAME IF VALIDATE-STATUS NOT = 00 DISPLAY "Name validation failed: " VALIDATE-STATUS GO TO ERROR-EXIT END-IF VALIDATE CUSTOMER-EMAIL IF VALIDATE-STATUS NOT = 00 DISPLAY "Email validation failed: " VALIDATE-STATUS GO TO ERROR-EXIT END-IF DISPLAY "All validations successful" GO TO NORMAL-EXIT. ERROR-EXIT. DISPLAY "Validation error occurred" STOP RUN. NORMAL-EXIT. STOP RUN.
Checking VALIDATE-STATUS after multiple validation operations.
1234567891011121314151617181920212223242526272829IDENTIFICATION DIVISION. PROGRAM-ID. VALIDATE-ERROR-HANDLING. DATA DIVISION. WORKING-STORAGE SECTION. 01 INVALID-DATA PIC 9(3) VALUE 999. 01 VALIDATE-STATUS PIC 9(2) VALUE 0. 01 ERROR-MESSAGE PIC X(50). PROCEDURE DIVISION. VALIDATE INVALID-DATA EVALUATE VALIDATE-STATUS WHEN 00 DISPLAY "Validation successful" WHEN 01 MOVE "Data format error" TO ERROR-MESSAGE PERFORM HANDLE-ERROR WHEN 02 MOVE "Data range error" TO ERROR-MESSAGE PERFORM HANDLE-ERROR WHEN OTHER MOVE "Unknown validation error" TO ERROR-MESSAGE PERFORM HANDLE-ERROR END-EVALUATE STOP RUN. HANDLE-ERROR. DISPLAY "Error: " ERROR-MESSAGE DISPLAY "Status: " VALIDATE-STATUS EXIT.
Using EVALUATE to handle different validation status codes.
Status codes indicating successful validation.
1200 - Validation successful 01 - Validation successful with warnings
Common error status codes.
123401 - Format validation error 02 - Range validation error 03 - Custom validation error 99 - General validation failure
How to check validation status.
12345IF VALIDATE-STATUS = 00 * Success handling ELSE * Error handling END-IF
Declaring VALIDATE-STATUS variable.
101 VALIDATE-STATUS PIC 9(2) VALUE 0.
Status Code | Meaning | Action |
---|---|---|
00 | Success | Continue processing |
01 | Format error | Check data format |
02 | Range error | Check data range |
99 | General failure | Investigate error |
1. What does VALIDATE-STATUS represent in COBOL?
2. What is a typical value for VALIDATE-STATUS when validation succeeds?
3. How do you check VALIDATE-STATUS after a validation operation?
4. What should you do when VALIDATE-STATUS indicates failure?
5. Can VALIDATE-STATUS be used with all validation methods?