ABAP 事件及其執行順序


 

事件流(6個):

  INITIALIZATION(初始化)

  AT SELECTION-SCREEN(屏幕跳出前)

  START-OF-SELECTION(取數據)

  END-OF-SELECTION(展示數據)

  TOP-OF-PAGE(普通報表輸出頁頭)

  END-OF-PAGE(普通報表輸出頁尾)

 

1.      LOAD-OF-PROGRAM:程序開始執行時候自動調用

    這個事件在SUBMIT,CALL TRANSACTION,PERFORM等執行的時候系統會自動調用這個事件。所以無需聲明即可。

    2.      INITIALIZATION

    (1).只能用於報表程序

    (2).在選擇屏幕出現之前執行,如果用邏輯數據庫的話,這個是唯一能夠修改選擇屏幕初始值的地方。

    (3).通常的用法是在這里給選擇屏幕中的字段賦值。

    3.      AT SELECTION-SCREEN

    (1).其實就像一個FORM,所以在這個事件里聲明的變量都是局部變量。

    (2).根據SY-UCOMM這個系統變量可以判斷用戶的命令

    (3).在這個事件里響應的是屏幕上選擇條件中的事件,例如CHECKBOX的選擇與否,RADIOBUTTON的選擇,LISTBOX的選擇等等。所以分為以下幾個方面:

      1). ... ON psel :在PARAMETER變化是觸發的事件

      2). ... ON END OF sel :SELECT-OPTION觸發的事件

      3). ... ON VALUE-REQUEST FOR psel_low_high :選擇的幫助(F4)

      4). ... ON HELP-REQUEST FOR psel_low_high :選擇的幫助(F1)

      5). ... ON RADIOBUTTON GROUP radi :單選按鈕事件

      6). ... ON BLOCK block :框架的觸發事件

      7). ... OUTPUT :響應屏幕上的事件,修改選擇屏幕的唯一方法

    4.      START-OF-SELECTION

    報表程序必須執行的事件,在進入第二屏幕之前觸發。

    5.      GET

    獲得邏輯數據庫的值。前提是必須首先聲明邏輯數據庫。

    6.      END-OF-SELECTION

    第二屏幕顯示完畢,結束處理。

    7.      MODULE

    這個是當你調用自己定義的屏幕時,響應屏幕事件的方法。

    8.      ENDMODULE

    9.      CHECK

    只對邏輯數據庫使用,檢查是否取得數據。

    10.   REJECT

    同樣只對邏輯數據庫使用,退出。

    11.   STOP

    結束一個處理塊。

    12.   RETURN

    返回一個處理塊。

 

事件執行順序:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM