REDEFINES clause examples

The REDEFINES clause can be specified for an item within the scope of (subordinate to) an area that is redefined.

In the following example, WEEKLY-PAY redefines SEMI-MONTHLY-PAY (which is within the scope of REGULAR-EMPLOYEE, while REGULAR-EMPLOYEE is redefined by TEMPORARY-EMPLOYEE).


05  REGULAR-EMPLOYEE.
  10  LOCATION                       PICTURE A(8).
  10  GRADE                          PICTURE X(4).
  10  SEMI-MONTHLY-PAY               PICTURE 9999V99.
  10  WEEKLY-PAY REDEFINES SEMI-MONTHLY-PAY
                                     PICTURE 999V999.
05  TEMPORARY-EMPLOYEE REDEFINES REGULAR-EMPLOYEE.
  10  LOCATION                       PICTURE A(8).
  10  FILLER                         PICTURE X(6).
  10  HOURLY-PAY                     PICTURE 99V99.

The REDEFINES clause can also be specified for an item subordinate to a redefining item, as shown for CODE-H REDEFINES HOURLY-PAY in the following example:


05  REGULAR-EMPLOYEE.
  10  LOCATION                       PICTURE A(8).
  10  GRADE                          PICTURE X(4).
  10  SEMI-MONTHLY-PAY               PICTURE 999V999.
05  TEMPORARY-EMPLOYEE REDEFINES REGULAR-EMPLOYEE.
  10  LOCATION                       PICTURE A(8).
  10  FILLER                         PICTURE X(6).
  10  HOURLY-PAY                     PICTURE 99V99.
  10  CODE-H REDEFINES HOURLY-PAY    PICTURE 9999.

Data items within an area can be redefined without changing their lengths. For example:


05  NAME-2.
  10  SALARY               PICTURE XXX.
  10  SO-SEC-NO            PICTURE X(9).
  10  MONTH                PICTURE XX.
05  NAME-1 REDEFINES NAME-2.
  10  WAGE                 PICTURE XXX.
  10  EMP-NO               PICTURE X(9).
  10  YEAR                 PICTURE XX.

Data item lengths and types can also be respecified within an area. For example:


05  NAME-2.
  10  SALARY               PICTURE XXX.
  10  SO-SEC-NO            PICTURE X(9).
  10  MONTH                PICTURE XX.
05  NAME-1 REDEFINES NAME-2.
  10  WAGE                 PICTURE 999V999.
  10  EMP-NO               PICTURE X(6).
  10  YEAR                 PICTURE XX.

Data items can also be respecified with a length that is greater than the length of the redefined item. For example:


05  NAME-2.
  10  SALARY               PICTURE XXX.
  10  SO-SEC-NO            PICTURE X(9).
  10  MONTH                PICTURE XX.
05  NAME-1 REDEFINES NAME-2.
  10  WAGE                 PICTURE 999V999.
  10  EMP-NO               PICTURE X(6).
  10  YEAR                 PICTURE X(4).

This does not change the length of the redefined item NAME-2.