LIST-PROCESSING命令的使用
生活随笔
收集整理的這篇文章主要介紹了
LIST-PROCESSING命令的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
List-Processing用于在程序中任意地方開始List輸出,可以放在代碼的任何地方。LEAVE TO LIST-PROCESSING 這段命令做兩件事:
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
PERFORM EDIT_LIST.
LEAVE SCREEN.
注意這一段代碼,第一行的作用前面已經說過了,邏輯將轉入下一屏幕(不是普通屏幕,是特殊屏幕)。第二行是一個子程序,在這里面要特別注意的是
運行時,MODULE-POOL放棄屏幕的控制權,可以執行LIST 輸出代碼,如WRITE等。我們可以選擇讓LIST輸出屏幕替代當前屏幕,或者是作為下一個屏幕,但是不管是哪一種方式,LIST輸出的屏幕將在當前屏幕邏輯執行完(LEAVE SCREEN或PAI執行完之時)之后顯示,也就是說,WRITE等命令仍然是將輸出的東西暫存在緩存中。
R/3系統中有一個DEMO:可以通過TCODE: TZ70運行。參考:SAP Online Help
**** ABAP module and form: ****
MODULE PREPARE_LIST OUTPUT.
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
PERFORM EDIT_LIST.
LEAVE SCREEN.
ENDMODULE.
FORM EDIT_LIST.
SET PF-STATUS 'LIST'.
SET TITLEBAR 'LST' WITH SFLIGHT-CONNID SFLIGHT-CARRID.
NEW-PAGE LINE-SIZE 72.
SELECT * FROM SFLIGHT WHERE CARRID = SFLIGHT-CARRID
AND CONNID = SFLIGHT-CONNID.
WRITE: / SY-VLINE NO-GAP,
SFLIGHT-FLDATE COLOR 4 INTENSIFIED OFF NO-GAP,
SY-VLINE NO-GAP,
SFLIGHT-PRICE COLOR 2 INTENSIFIED OFF NO-GAP,
.......
ENDFORM.
LEAVE TO LIST-PROCESSING 是退出其他屏幕后,到List輸入的屏幕,例如:WRITE 語句輸入的屏幕。
LEAVE LIST-PROCESSING 是在其他屏幕退出,到List輸入屏幕間的動作。
- 切換到List輸出模式
- 將顯示List 輸出的屏幕設置為當前調用處的下個屏幕(Following Screen)
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
PERFORM EDIT_LIST.
LEAVE SCREEN.
注意這一段代碼,第一行的作用前面已經說過了,邏輯將轉入下一屏幕(不是普通屏幕,是特殊屏幕)。第二行是一個子程序,在這里面要特別注意的是
- 設置STATUS, "SET PF-STATUS 'XXXX'",如果不設置的話,會把調用該語句的屏幕的STATUS繼承過去。
- 在設置STATUS之后,用WRITE等命令輸出。
- LIST屏幕上的按鈕響應目前還沒研究明白,明白人請留言,謝謝!
運行時,MODULE-POOL放棄屏幕的控制權,可以執行LIST 輸出代碼,如WRITE等。我們可以選擇讓LIST輸出屏幕替代當前屏幕,或者是作為下一個屏幕,但是不管是哪一種方式,LIST輸出的屏幕將在當前屏幕邏輯執行完(LEAVE SCREEN或PAI執行完之時)之后顯示,也就是說,WRITE等命令仍然是將輸出的東西暫存在緩存中。
- LIST輸出作為下一個屏幕
- LIST輸出替換當前屏幕
R/3系統中有一個DEMO:可以通過TCODE: TZ70運行。參考:SAP Online Help
**** ABAP module and form: ****
MODULE PREPARE_LIST OUTPUT.
LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
PERFORM EDIT_LIST.
LEAVE SCREEN.
ENDMODULE.
FORM EDIT_LIST.
SET PF-STATUS 'LIST'.
SET TITLEBAR 'LST' WITH SFLIGHT-CONNID SFLIGHT-CARRID.
NEW-PAGE LINE-SIZE 72.
SELECT * FROM SFLIGHT WHERE CARRID = SFLIGHT-CARRID
AND CONNID = SFLIGHT-CONNID.
WRITE: / SY-VLINE NO-GAP,
SFLIGHT-FLDATE COLOR 4 INTENSIFIED OFF NO-GAP,
SY-VLINE NO-GAP,
SFLIGHT-PRICE COLOR 2 INTENSIFIED OFF NO-GAP,
.......
ENDFORM.
LEAVE TO LIST-PROCESSING 是退出其他屏幕后,到List輸入的屏幕,例如:WRITE 語句輸入的屏幕。
LEAVE LIST-PROCESSING 是在其他屏幕退出,到List輸入屏幕間的動作。
總結
以上是生活随笔為你收集整理的LIST-PROCESSING命令的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在SAP的Screen中编写List
- 下一篇: 检查 ABAP/4 程序用户的 权限