0
点赞
收藏
分享

微信扫一扫

ALV输入数据后点回车自动将焦点置为下一行的该列(FM ALV)_SAP刘梦


输入数据后,点回车,焦点自动换到下一行的该列 ​ALV输入数据后点回车自动将焦点置为下一行的该列(FM <wbr>ALV)



ALV输入数据后点回车自动将焦点置为下一行的该列(FM <wbr>ALV)


code

*&---------------------------------------------------------------------*

*& Report  ZLM_ALV_015

*&

*&---------------------------------------------------------------------*

*&

*&

*&---------------------------------------------------------------------*


REPORT ZLM_ALV_015 .


* Data Declration


TYPE-POOLS : SLIS .

*

TYPES :  BEGIN  OF TY_SFLIGHT .

INCLUDE  TYPE SFLIGHT .

TYPES : BOX  TYPE CHAR1 ,

       

END   OF TY_SFLIGHT .

*

*

DATA : GT_SFLIGHT  TYPE  TABLE  OF TY_SFLIGHT .

DATA : GS_LAYOUT   TYPE SLIS_LAYOUT_ALV .

DATA : LT_EVTS     TYPE SLIS_T_EVENT ,

      LA_EVTS    

LIKE  LINE  OF LT_EVTS .

*

DATA : GS_REPORT  TYPE SY -CPROG ,

      GS_TITLE  

TYPE LVC_TITLE .


*

* Start of Selection

START-OF-SELECTION .

*

* Report

  GS_REPORT 

= SY -CPROG .

  GS_TITLE  

=  'Move Cursor to next row by pressing Enter' .



*

* Selection.

  

SELECT *  FROM SFLIGHT

         

INTO CORRESPONDING  FIELDS  OF  TABLE GT_SFLIGHT  UP  TO  10  ROWS .


*

* Layout

  GS_LAYOUT

- EDIT  =  'X' .


*

* Event for Data Changed

  LA_EVTS

-NAME  =  'DATA_CHANGED' .

  LA_EVTS

- FORM  =  'GET_DATA_CHANGED' .

  

APPEND LA_EVTS  TO LT_EVTS .


*

* Call ABAP List Viewer (ALV)

  

CALL  FUNCTION  'REUSE_ALV_GRID_DISPLAY'

    

EXPORTING

      I_GRID_TITLE       

= GS_TITLE

      I_CALLBACK_PROGRAM 

= GS_REPORT

      I_STRUCTURE_NAME   

=  'SFLIGHT'

      IS_LAYOUT          

= GS_LAYOUT

      IT_EVENTS          

= LT_EVTS

    

TABLES

      T_OUTTAB           

= GT_SFLIGHT .


*

*&---------------------------------------------------------------------*

*&      Form  get_data_changed

*&---------------------------------------------------------------------*

*       Here we will get the current cell and than add 1 to it to move

*         to next row. Than we will call the method to set the new row

*----------------------------------------------------------------------*

FORM GET_DATA_CHANGED  USING RR_DATA_CHANGED

        

TYPE  REF  TO CL_ALV_CHANGED_DATA_PROTOCOL .

*

  

DATA : LO_GRID  TYPE  REF  TO CL_GUI_ALV_GRID .

*

  

DATA : LE_ROW      TYPE  I ,

        LE_VALUE   

TYPE  C ,

        LE_COL     

TYPE  I ,

        LES_ROW_ID 

TYPE LVC_S_ROW ,

        LES_COL_ID 

TYPE LVC_S_COL ,

        LES_ROW_NO 

TYPE LVC_S_ROID .


*

* Get the ALV Object reference

  

CALL  FUNCTION  'GET_GLOBALS_FROM_SLVC_FULLSCR'

    

IMPORTING

      E_GRID 

= LO_GRID .


*

* Get the Current Cell

  

CALL  METHOD LO_GRID ->GET_CURRENT_CELL

    

IMPORTING

     


举报

相关推荐

0 条评论