列表和屏幕相互调用之从屏幕输入条件,列表输出数据
1、创建一个主屏幕100,设置文本元素和按钮等
2、代码实现部分
REPORT ytest021.
*screen返回码
DATA:ok_code TYPE sy-ucomm,
save_ok TYPE sy-ucomm,
*与屏幕上定义的字段名相同
scarrid(20) TYPE c.
*用到航班表
TABLES spfli.
CALL SCREEN 100.
*&---------------------------------------------------------------------*
*& Module EXIT INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE exit INPUT.
LEAVE PROGRAM.
ENDMODULE. " EXIT INPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
save_ok = ok_code.
CLEAR ok_code.
IF save_ok = 'OKSCH'.
*回到初始屏幕和列表模式
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0 .
"LEAVE TO SCREEN 0.
*根据screen返回的scarrid读取数据表,并输出
SELECT * INTO spfli
FROM spfli WHERE carrid = scarrid.
WRITE: / spfli-carrid,spfli-connid,spfli-cityfrom,spfli-cityto.
ENDSELECT.
ENDIF.
ENDMODULE.