最简单的语法为:
声明:
field-symbols: <F1>.
赋值:
assign (variable_fieldName) to <F1>.
使用:
<F1> = 'xxxxx'.
===============================================================================
如下即是一个简单的例子,表明了如何定义和使用声明的指针,并使用其进行操作和修改内表的值。
*&---------------------------------------------------------------------*
*& 声明部分
*&---------------------------------------------------------------------*
data: lv_flag(11) type c value 'it_so-fld??'.
field-symbols: <flag>.
data: n_index(2) type n.
*&---------------------------------------------------------------------*
*& Form fill_data
*& 根据 it_doctype 中的记录(存放的值即为 Column Name) 和 SO ,
*& 检查 it_drad 表中的记录,如存在记录则对应字段的值即为"X",否则即为" "
*&---------------------------------------------------------------------*
FORM fill_data .
data: wa_col like sy-tabix,
wa_soix like sy-tabix.
data: wa_objky like drad-objky.
loop at it_so.
wa_soix = sy-tabix.
clear wa_objky.
wa_objky = it_so-vbeln.
clear wa_col.
loop at it_doctype.
wa_col = sy-tabix.
n_index = 9 + wa_col.
lv_flag+9(2) = n_index.
assign (lv_flag) to <flag>.
read table it_drad with key objky = wa_objky
dokar = it_doctype-dokar.
if sy-subrc eq 0.
<flag> = 'X'.
else.
<flag> = ' '.
endif.
endloop.
modify it_so index wa_soix.
endloop.
ENDFORM. " fill_data