可以用 ASSIGN 语句将字段 串的特殊组 件分配给字 段符号,过 程如下:
语法
ASSIGN COMPONENT OF STRUCTURE TO .
系统将字符 串 的组件 分配给字段 符号 。 可以指定 为文字或变 量。如果 属于类型 C 或字段串( 象组件一样 没有内表) ,它指定组 件的名称。 如果 有任何其它 基本数据类 型,将被转 化为类型 I(参见 类型转换 (页 6–36) ),并且指 定组件号。
如果分配成 功,SY-SUBRC 设为 0。否则, 返回 4。
DATA: BEGIN OF LINE,
COL1 TYPE I VALUE '11',
COL2 TYPE I VALUE '22',
COL3 TYPE I VALUE '33',
END OF LINE.
DATA COMP(5) VALUE 'COL3'.
FIELD-SYMBOLS: <</strong>F1>, <</strong>F2>, <</strong>F3>.
ASSIGN LINE TO <</strong>F1>.
ASSIGN COMP TO <</strong>F2>.
DO 3 TIMES.
ASSIGN COMPONENT SY-INDEX OF STRUCTURE <</strong>F1> TO <</strong>F3>.
WRITE <</strong>F3>.
ENDDO.
ASSIGN COMPONENT <</strong>F2> OF STRUCTURE <</strong>F1> TO <</strong>F3>.
WRITE / <</strong>F3>.
输出如下:
11 22 33
33
该示例中, <</span>F1> 指向字段串 LINE, <</span>F2> 指向字段 COMP。 循环中,LINE 的组件由其 号码指定, 并且一个接 一个地被分 配到 <</span>F3>。 循环之后, LINE 的组件 COL3 由其名称指 定,并被分 配到 <</span>F3>。
|