Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8372

How to Activate Double-Click Action of ALV Grid

$
0
0

I expect that my own function can be executed when I double click any column in a line of ALV grid. But unfortunately, nothing happened when line of ALV grid was double clicked. Please help me solve this problem.

 

double_click_invalid_chris.png

 

Part of source code:

 

FORM fill_events TABLES t_events TYPE slis_t_event.

 

   t_events-name = slis_ev_top_of_page. "'TOP_OF_PAGE'

   t_events-form = slis_ev_top_of_page.

   APPEND t_events.

 

 

   t_events-name = slis_ev_user_command. "'USER_COMMAND'

   t_events-form = slis_ev_user_command.

   APPEND t_events.

 

ENDFORM.


FORM go_to_payrq_page_overview USING it_payrq_display TYPE type_copc_t_payrq_display.

"COPY FROM RFPRQSHW

   DATA s_layout TYPE slis_layout_alv.

   DATA t_fieldcat TYPE slis_t_fieldcat_alv.

   DATA t_events   TYPE slis_t_event.

   DATA pgm LIKE sy-repid.

 

 

   pgm = sy-repid.

   s_layout-zebra = 'X'.

 

   PERFORM fill_fieldcat CHANGING t_fieldcat.

   PERFORM fill_events TABLES t_events.

 

 

   CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

       EXPORTING

            i_callback_program       = pgm

            i_callback_pf_status_set = 'PF_STATUS_SET'

            i_callback_user_command  = 'USER_COMMAND'

*          i_structure_name         = 'PAYRQSHW'

*          i_grid_settings          = s_grid_settings "only for GRID-FM

            is_layout                = s_layout

            it_fieldcat              = t_fieldcat

*         IT_EXCLUDING             =

*         IT_SPECIAL_GROUPS        =

*          it_sort                  = t_sort

*         IT_FILTER                =

*         IS_SEL_HIDE              =

*me         i_default                = 'X'

*          is_variant               = l_variant

           it_events                = t_events

*         IT_EVENT_EXIT            =

*         IS_PRINT                 =

*         I_SCREEN_START_COLUMN    = 0

*         I_SCREEN_START_LINE      = 0

*         I_SCREEN_END_COLUMN      = 0

*         I_SCREEN_END_LINE        = 0

*    IMPORTING

*         E_EXIT_CAUSED_BY_CALLER  =

*         ES_EXIT_CAUSED_BY_USER   =

        TABLES

             t_outtab                 = it_payrq_display

        EXCEPTIONS

             program_error            = 1

             OTHERS                   = 2.

 

ENDFORM.

 

FORM user_command USING ucomm LIKE sy-ucomm

                         selfield TYPE slis_selfield.

 

   CASE ucomm.

 

     WHEN '&IC1' OR '&ETA'.

       MESSAGE 'sd' TYPE 'S'.

*      IF rs_selfield-tabname NE ''

*       AND rs_selfield-tabindex GT 0.

*        READ TABLE lt_bdj_item INTO ls_bdj_item INDEX rs_selfield-tabindex.

*        IF NOT ls_bdj_item-belnr IS INITIAL.

*          SET PARAMETER ID: 'BLN' FIELD ls_bdj_item-belnr,

*                            'BUK' FIELD ls_bdj_item-bukrs,

*                            'GJR' FIELD ls_bdj_item-gjahr.

*          CALL TRANSACTION 'FB03' WITH AUTHORITY-CHECK AND SKIP FIRST SCREEN.

*        ENDIF.

*      ENDIF.

 

     WHEN  'PRNT'.

 

     WHEN 'BACK'.

*      LEAVE to SCREEN 0.

 

   ENDCASE.

 

ENDFORM.


FORM fill_fieldcat CHANGING t_fieldcat TYPE slis_t_fieldcat_alv.

 

   DATA: l_colpos        TYPE i,

         ls_fieldcat     TYPE slis_fieldcat_alv,

         lt_fieldcat     TYPE slis_t_fieldcat_alv.

 

   CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'

     EXPORTING

       i_program_name         = sy-repid

*     i_internal_tabname     = 'T_PAYRQ'

       i_structure_name       = 'COPC_S_PAYRQ_DISPLAY'

       i_client_never_display = 'X'

     CHANGING

       ct_fieldcat            = lt_fieldcat

     EXCEPTIONS

       inconsistent_interface = 1

       program_error          = 2

       OTHERS                 = 3.

 

   IF sy-subrc <> 0.

*   MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

   ENDIF.

 

   LOOP AT lt_fieldcat INTO ls_fieldcat.

     IF ls_fieldcat-fieldname NE 'KEYNO' AND

        ls_fieldcat-fieldname NE 'BUKRS' AND

        ls_fieldcat-fieldname NE 'BELNR' AND

        ls_fieldcat-fieldname NE 'GJAHR' AND

        ls_fieldcat-fieldname NE 'PACUR' AND

        ls_fieldcat-fieldname NE 'PAMTF' AND

        ls_fieldcat-fieldname NE 'KOART' AND

        ls_fieldcat-fieldname NE 'PARNO' AND

        ls_fieldcat-fieldname NE 'PAYEE' AND

        ls_fieldcat-fieldname NE 'PAYGR' AND

        ls_fieldcat-fieldname NE 'AUGBL' AND

        ls_fieldcat-fieldname NE 'MNDID'.

 

       ls_fieldcat-no_out = 'X'.

     ENDIF.

 

     APPEND ls_fieldcat TO t_fieldcat.

   ENDLOOP.

 

ENDFORM.


Viewing all articles
Browse latest Browse all 8372

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>