When a variable-length field is used for its value, its current length is used. For the following example, assume 'result' is a fixed length field with a length of 7.
*.. 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++++++ D fld 10A VARYING * For the following EVAL operation * Value of 'fld' Length of 'fld' 'result' * -------------- --------------- ----------- * 'ABC' 3 'ABCxxx ' * 'A' 1 'Axxx ' * '' 0 'xxx ' * 'ABCDEFGHIJ' 10 'ABCDEFG' CL0N01Factor1+++++++Opcode(E)+Factor2+++++++Result++++++++Len++D+HiLoEq... C EVAL result = fld + 'xxx' * For the following MOVE operation, assume 'result' * has the value '.......' before the MOVE. * Value of 'fld' Length of 'fld' 'result' * -------------- --------------- ----------- * 'ABC' 3 '....ABC' * 'A' 1 '......A' * '' 0 '.......' * 'ABCDEFGHIJ' 10 'DEFGHIJ' C MOVE fld result