ABAP基础语法练习题
01、题目一:创建表
参考标准表SPFLI,如下图所示,创建自建表ZTTEST_<流水号>,要求CARRID参考的数据元素(Data Element)为ZE_CARRID<流水号>,数据元素参考的域(Domain)为ZD_CARRID<流水号>
(1) 输入T-Code:SE11
(2) 创建表ZTTEST_007
(3) 设置交付和维护子界面
(4) 创建数据元素ZE_CARRID007,域(Domain)为ZD_CARRID007
(5) 将表ZTTEST_007保存激活
02、题目二:向表插入数据
使用数据库表处理语法向自建表ZT_TEST<流水号>插入下列数据。
要求使用内表进行批量插入
(1) 创建程序,输入T-Code:SE38
(2) 编写程序,使用内表进行批量插入
REPORT ZT_TEST_007.
TABLES: SPFLI, ZTTEST_007.
DATA: lt_item TYPE STANDARD TABLE OF SPFLI. "定义内表
CLEAR:lt_item.
SELECT *
INTO CORRESPONDING FIELDS OF TABLE lt_item
FROM SPFLI UP TO 5 ROWS.
MODIFY ZTTEST_007 FROM TABLE lt_item.
WRITE: / '向自建表插入完成!'.
(3) 输入T-Code:SE16N,自建表ZTTEST_007插入结果展示
03、题目三:读取表数据,输出到屏幕
使用WRITE语法将下图红框中的两行数据,按行输出至屏幕,要求
(1)通过SELECT语法将自建表所有数据查询进内表
(2)遍历内表只输出前两行数据至屏幕
(1) 输入T-Code:SE38,创建输出程序
(2) 编写程序,读取自建表所有数据,并输出前两行
REPORT ZT_TEST_008.
TABLES: ZTTEST_007.
DATA: lt_item TYPE STANDARD TABLE OF ZTTEST_007. "定义内表
* (1)通过SELECT语法将自建表所有数据查询进内表
SELECT *
INTO CORRESPONDING FIELDS OF TABLE lt_item
FROM ZTTEST_007.
* (2)遍历内表只输出前两行数据至屏幕
DATA: lv_count TYPE i VALUE 0.
LOOP AT lt_item INTO DATA(ls_item).
lv_count = lv_count + 1.
IF lv_count <= 2.
WRITE: / ls_item-airpfrom, ls_item-airpto, ls_item-arrtime, ls_item-carrid, ls_item-cityfrom,
ls_item-cityto, ls_item-connid, ls_item-countryfr, ls_item-countryto, ls_item-deptime,
ls_item-distance, ls_item-distid, ls_item-fltime, ls_item-fltype, ls_item-mandt, ls_item-period.
ELSE.
EXIT. " 当输出两行后退出循环
ENDIF.
ENDLOOP.