* 1.动态字段查询
WRITE:/ '1.动态字段查询'.
DATA : gs_lin(72)."长度最多为72位
DATA : lt_makt TYPE TABLE OF makt WITH HEADER LINE.
gs_lin = 'MATNR SPRAS MAKTX'.
SELECT (gs_lin)
FROM makt
INTO CORRESPONDING FIELDS OF TABLE lt_makt
UP TO 3 ROWS.
LOOP AT lt_makt.
WRITE :/, 'MATNR:' ,lt_makt-matnr,
'SPRAS:' ,lt_makt-spras,
'MAKTX:' ,lt_makt-maktx.
ENDLOOP.
WRITE:/ '1.动态字段查询'.
DATA : gs_lin(72)."长度最多为72位
DATA : lt_makt TYPE TABLE OF makt WITH HEADER LINE.
gs_lin = 'MATNR SPRAS MAKTX'.
SELECT (gs_lin)
FROM makt
INTO CORRESPONDING FIELDS OF TABLE lt_makt
UP TO 3 ROWS.
LOOP AT lt_makt.
WRITE :/, 'MATNR:' ,lt_makt-matnr,
'SPRAS:' ,lt_makt-spras,
'MAKTX:' ,lt_makt-maktx.
ENDLOOP.
输出结果:
*2.动态表查询
WRITE:/ '2.动态表查询'.
DATA:l_table_name(10),
lt_lfa1 TYPE TABLE OF lfa1 WITH HEADER LINE.
l_table_name = 'LFA1'.
SELECT * FROM (l_table_name) INTO TABLE lt_lfa1 UP TO 5 ROWS.
LOOP AT lt_lfa1.
WRITE :/, 'LIFNR:' ,lt_lfa1-lifnr,
'LAND1:' ,lt_lfa1-land1,
'NAME1:' ,lt_lfa1-name1,
'NAME2:' ,lt_lfa1-name2,
'NAME3:' ,lt_lfa1-name3.
ENDLOOP.
WRITE:/ '2.动态表查询'.
DATA:l_table_name(10),
lt_lfa1 TYPE TABLE OF lfa1 WITH HEADER LINE.
l_table_name = 'LFA1'.
SELECT * FROM (l_table_name) INTO TABLE lt_lfa1 UP TO 5 ROWS.
LOOP AT lt_lfa1.
WRITE :/, 'LIFNR:' ,lt_lfa1-lifnr,
'LAND1:' ,lt_lfa1-land1,
'NAME1:' ,lt_lfa1-name1,
'NAME2:' ,lt_lfa1-name2,
'NAME3:' ,lt_lfa1-name3.
ENDLOOP.
输出结果: