您的位置:首页 > 大数据 > 人工智能

FIELD MODULE结合CHAIN在SCREEN中的应用实例

2011-02-12 18:13 405 查看
REPORT中代码------------------------------------------------------------------------------------------

TABLES SPFLI.
DATA: OK_CODE TYPE SY-UCOMM.
DATA: S***E_OK TYPE SY-UCOMM.
DATA: FLD1(20) TYPE C,
FLD2(20) TYPE C,
FLD3(20) TYPE C,
FLD4(20) TYPE C,
ACTION(50) TYPE C.
*&---------------------------------------------------------------------*
*& Module CANCEL INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
CALL SCREEN 100.
module CANCEL input.
LE***E PROGRAM.
endmodule. " CANCEL INPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module USER_COMMAND_0100 input.
S***E_OK = OK_CODE.
CLEAR OK_CODE.
CASE S***E_OK.
WHEN 'EXIT'.
LE***E PROGRAM.
ENDCASE.
* SELECT SINGLE *
* INTO CORRESPONDING FIELDS OF SPFLI
* FROM SPFLI
* WHERE CARRID EQ SPFLI-CARRID AND CONNID EQ SPFLI-CONNID.
*IF sy-subrc ne 0.
* CLEAR spfli.
*ENDIF.
ACTION = ''.
CONCATENATE FLD1 FLD2 FLD3 FLD4 INTO ACTION.
endmodule. " USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module STATUS_0100 output.
SET PF-STATUS 'STATUS1'.
* SET TITLEBAR 'xxx'.

endmodule. " STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*& Module CHECK1 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module CHECK1 input.
IF fld1 = 'FLD1'.
MESSAGE e398(00) WITH 'FLD1 ERROR'.
ENDIF.
IF FLD1 = 'FLD11'.
MESSAGE I398(00) WITH 'FLD1 WARNING'.
ENDIF.
IF FLD1 = 'FLD111'.
MESSAGE S398(00) WITH 'FLD1 OK'.
ENDIF.
endmodule. " CHECK1 INPUT
*&---------------------------------------------------------------------*
*& Module CHECK2 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module CHECK2 input.
IF FLD3 = 'FLD3'.
MESSAGE E398(00) WITH 'FLD3 ERROR'.
ENDIF.
IF FLD3 = 'FLD33'.
MESSAGE I398(00) WITH 'FLD3 WARNING'.
ENDIF.
IF FLD3 = 'FLD333'.
MESSAGE S398(00) WITH 'FLD3 OK'.
ENDIF.
endmodule. " CHECK2 INPUT
*&---------------------------------------------------------------------*
*& Module CHECK3 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module CHECK3 input.
MESSAGE I398(00) WITH 'FLD2 * WARNING'.
endmodule. " CHECK3 INPUT























屏幕100的逻辑流---------------------------------------------------------------------------------------

PROCESS BEFORE OUTPUT.
MODULE STATUS_0100.
*
PROCESS AFTER INPUT.
CHAIN.
FIELD: FLD1, FLD2.
MODULE CHECK1.
ENDCHAIN.
CHAIN.
FIELD: FLD3, FLD4.
MODULE CHECK2.
ENDCHAIN.
FIELD FLD2 MODULE CHECK3 ON *-INPUT.
MODULE CANCEL AT EXIT-COMMAND.
MODULE USER_COMMAND_0100.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: