本例實現的功能是:運行程序之後,點擊按鈕之後,可以彈出一個screen,然後輸入變量,運行,可以再次彈出結果。就像ME23N,裏面的輸入PO的功能。
開發步驟:
1、首先創建一個屏幕,填寫OK code,以及編輯屏幕layout(只有通過這個纔可以編寫Element list):
(其中layout裏面的輸入輸出變量要先在主程序中定義,ok_code也是一樣,本例定義的是一個內表)
這裏頭的變量需要先定義好。
2、在屏幕的Logic flow裏面添加相應的PBO和PAI,實現功能:
(幾個關鍵點:GUI Stauts屏幕按鈕,USER_COMMEND,退出屏幕,字段檢查功能)
㈠整體的PBO和PAI的模型:
其中可以單獨對有些字段進行檢查,用MODULE的方式:
MODULE check_docnum INPUT.
IF s_stat IS INITIAL AND gs_edidc-docnum IS INITIAL.
MESSAGE text-002 TYPE 'E'.
ENDIF.
ENDMODULE.
㈡ 定義GUI Status:(在主程序的object界面裏面通過create創建)
創建完GUI Status,一般在PBO裏面實現:
MODULE PBO_1001 OUTPUT.
SET PF-STATUS 'PF_1001'.
ENDMODULE.
㈢ 創建USER_COMMEND 操作(PAI裏的module):
MODULE USER_COMMAND_1001 INPUT.
DATA:l_ok_code TYPE sy-ucomm.
l_ok_code = OK_CODE.
CLEAR ok_code. 這項是必須要的,清除OK_CODE的值
CASE l_ok_code.
WHEN 'RUN'.
WHEN OTHERS.
LEAVE TO SCREEN 0. 返回屏幕也是必須的,不然會一直停留在本屏幕
ENDCASE.