Previous Topic: IDMS_STATUS RoutineNext Topic: IDMS_STATUS Routine Used Under a DC/UCF System


IDMS_STATUS Routine Used Under Batch

The following code is copied into batch programs by the INCLUDE IDMS (IDMS_STATUS) statement:

IDMS_STATUS: PROC;
    DECLARE IDMSIN1 ENTRY OPTIONS(INTER,ASSEMBLER);
    IF   ERROR_STATUS='0000' THEN GOTO END_STATUS;
    PUT SKIP EDIT ('PROGRAM NAME ------', PROGRAM,
                   'ERROR STATUS ------', ERROR_STATUS,
                   'ERROR RECORD ------', ERROR_RECORD,
                   'ERROR SET ---------', ERROR_SET,
                   'ERROR AREA --------', ERROR_AREA,
                   'LAST GOOD RECORD --', RECORD_NAME,
                   'LAST GOOD AREA ----', AREA_NAME)
                  (A(19),X(5),A(8),SKIP,A(19),X(5),A(4),
                   5(SKIP,A(19),X(5),A(16)));
    SSC_IN01_REQ_CODE = 39;
    SSC_IN01_REQ_RETURN = 0;
    SSC_STATUS_LABEL = ' ';
    DO UNTIL (SSC_IN01_REQ_RETURN > 0);
        CALL IDMSIN1  (IDBMSCOM(41),
                       SSC_IN01_REQ_WK,
                       SUBSCHEMA_CTRL,
                       IDBMSCOM(1),
                       DML_SEQUENCE,
                       SSC_STATUS_LINE);
        IF SSC_IN01_REQ_RETURN > 4 THEN
            PUT SKIP EDIT ('DML SEQUENCE ------', DML_SEQUENCE)
                          (A(19),X(5),F(10));
        ELSE
            PUT SKIP EDIT (SSC_STATUS_LABEL, '---',
                           SSC_STATUS_VALUE)
                          (A(16),A(3),X(5),A(12));
    END;
    ROLLBACK;
    CALL ABORT;
END_STATUS: END;