The RECORD-POSITION construct allows you to refer to a data item by creating a numeric literal representing the location of the data item within a record.
RECORD-POSITION OF data-name
If you assume the following group item:
01  GROUP-1.
    03  ELEM-1  PIC X(10).
    03  ELEM-2  PIC X(10).
    03  GROUP-2.
        05  ELEM-3
            OCCURS 10 TIMES  PIC X(10).
        05  ELEM-4  PIC X(10). 
               		then, the following procedure division code:
DISPLAY RECORD-POSITION OF ELEM-1, CONVERT, LEFT DISPLAY RECORD-POSITION OF ELEM-2, CONVERT, LEFT DISPLAY RECORD-POSITION OF ELEM-3, CONVERT, LEFT DISPLAY RECORD-POSITION OF ELEM-4, CONVERT, LEFT
would produce the following output:
1 11 21 121
The RECORD-POSITION construct is particularly useful with the DATA-COLUMNS property of the list box and grid controls. For example, in a list box control, you might have a line that reads:
data-columns - (1, 13, 24, 33 )
changing the line to:
data-columns = ( 
    record-position of data-key-1, 
    record-position of data-city, 
    record-position of data-state, 
    record-position of data-amount ) 
               		makes it easier to understand. With this syntax, changes to the record format do not need to be echoed in the data-columns format, so this is also easier to maintain.