关于Abap 动态字段及指针处理方法,最近整理了一下简单的应用,以供参考:
应用一: Dynamic Field Apply 1
DATA: zpor_wa type z1td1106.
data: begin of itab OCCURS 0,
zMODEL LIKE z1td1106-ZMODEL,
ZQTY LIKE z1td1106-QTY01,
END OF ITAB.
field-SYMBOLS: type any,
TYPE any.
ASSIGN zpor_wa to .
select single *
from z1td1106 into zpor_wa.
while sy-subrc = 0.
ASSIGN COMPONENT sy-index of STRUCTURE to .
if sy-index = 5.
itab-Zmodel = .
endif.
IF sy-index > 9 and sy-index < 25.
itab-ZQTY = .
ENDIF.
APPEND itab.
ENDWHILE.
LOOP AT itab.
write:/ itab-Zmodel ,':',itab-ZQTY.
ENDLOOP.
* 应用二:Dynamic Field Apply 2
DATA :
T_A(15) TYPE C VALUE 'ITAB100-',
T_B(15) TYPE C,
BEGIN OF ITAB100 OCCURS 0,
A(15) TYPE C,
B TYPE I,
END OF ITAB100,
BEGIN OF ITAB200 OCCURS 0,
A1(15) TYPE C,
A2(15) TYPE C,
A3(15) TYPE C,
END OF ITAB200.
FIELD-SYMBOLS: .
ITAB100-A = 'A'.
ITAB100-B = 100.
APPEND ITAB100.
ITAB100-A = 'B'.
ITAB100-B = 200.
APPEND ITAB100.
ITAB100-A = 'C'.
ITAB100-B = 300.
APPEND ITAB100.
CLEAR:ITAB200[].
LOOP AT ITAB100.
CONCATENATE T_A ITAB100-A INTO T_B.
ASSIGN (T_B) TO .
ITAB200-A1 = .
APPEND ITAB200.
ENDLOOP.
LOOP AT ITAB200.
Write:/ ITAB200-A1,',',ITAB200-A2,',',ITAB200-A3.
ENDLOOP.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/9381143/viewspace-670424/
,如需转载,请注明出处,否则将追究法律责任。