【ABAP系列】SAP ABAP 如何控制Dialog中的鍵盤(回車)功能


公眾號: matinal
本文作者: matinal
 

 

前言部分

大家可以關注我的公眾號,公眾號里的排版更好,閱讀更舒適。

正文部分

MODULE USER_COMMAND_2100 INPUT.
  CLEAR SAVE_OK.
  SAVE_OK = OK_CODE.
  CLEAR OK_CODE.
  CASE SAVE_OK.
    WHEN \'ENTER\'.
      PERFORM FRM_ENTER.
    WHEN \'CANC\' OR \'BACK\'.
      LEAVE TO SCREEN 0.
    WHEN \'EXIT\'.
      LEAVE PROGRAM.
    WHEN \'INPU\'.
      PERFORM FRM_SELE_FUNC USING \'1\'.
    WHEN \'MODI\'.
      PERFORM FRM_SELE_FUNC USING \'2\'.
    WHEN \'SECH\'.
      PERFORM FRM_SELE_FUNC USING \'3\'.
    WHEN \'CLEA\'.
      PERFORM FRM_CLEAR_SCREEN USING \'2100\'.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_2100  INPUT
*&---------------------------------------------------------------------*
*&      Form  FRM_ENTER
*&---------------------------------------------------------------------*
*       按回車鍵引發的動作
*----------------------------------------------------------------------*
FORM FRM_ENTER_2100 .
* 取得當前光標所在位置
  CLEAR W_2100-CURPOS.
  GET CURSOR FIELD W_2100-CURPOS.
  CASE W_2100-CURPOS.
    WHEN \'W_2100-DATE\'.
*     揀配日期——默認當天日期,可修改。若修改,用戶回車后判斷日期格式
*     是否正確,若不正確光標停留在“揀配日期”項目上等待用戶修改;若正
*     確光標跳到“倉庫”項目上。
      PERFORM FRM_MAIN_CHECK_JZRQ USING W_2100-DATE.      "檢查日期
      IF G_MAIN_CURPOS = \'W_G-JZRQ\'.
        W_2100-CURPOS  = \'W_2100-DATE\'.
        EXIT.
      ELSE.
        W_2100-CURPOS  = \'W_2100-LGORT\'.
      ENDIF.
    WHEN \'W_2100-LGORT\'.
*   倉庫——用戶登錄后,從“倉管員信息表”里查找出用戶名對應的庫存地點,
*   顯示在“倉庫”后面。用戶可修改,修改后按回車,系統需要判斷用戶輸入的
*   庫存地點代碼是否在“倉管員信息表”里,若不存在提示錯誤信息(您沒有操
*   作該倉庫的權限)。若正確,回車后光標跳到“請選擇”上
      SELECT  SINGLE LGORT
        INTO  ZMMWHM-LGORT
        FROM  ZMMWHM
        WHERE NAME  = SY-UNAME
          AND LGORT = W_2100-LGORT.
      IF SY-SUBRC <> 0.
        W_2100-CURPOS  = \'W_2100-LGORT\'.
          MESSAGE E000.
        EXIT.
      ELSE.
        W_2100-CURPOS  = \'W_2100-SELE\'.
      ENDIF.
    WHEN \'W_2100-SELE\'.
*   請選擇——用戶在該項目上輸入屏幕上可供選擇的菜單項編號,回車后系統判
*   斷輸入的內容是否存在對應菜單編號,若不存在光標停留在“請選擇”項目
*   上,並選中輸入的內容等待用戶修改;若存在則進入相應的操作屏幕。
      PERFORM FRM_SELE_FUNC USING W_2100-SELE.
    WHEN OTHERS.
  ENDCASE.
ENDFORM.                    " FRM_ENTER

 


免責聲明!

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



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