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

Re: How to add RadioButton in ALV

$
0
0

Hi,

please go through this program to add radio button and its functionality in alv report.

 

TYPE-POOLS: SLIS.

INCLUDE <ICONS>.

DATA: IT_FCAT TYPE SLIS_T_FIELDCAT_ALV ,

       WA_FCAT LIKE LINE OF IT_FCAT.

 

DATA: BEGIN OF IT_ALV_FLIGHT OCCURS 0,

        CARRID TYPE SFLIGHT-CARRID,

        CONNID TYPE SFLIGHT-CONNID,

        RADIO(4),"Radio button

       END OF IT_ALV_FLIGHT.

 

SELECT CARRID CONNID FROM SFLIGHT

INTO TABLE IT_ALV_FLIGHT

UP TO 1000 ROWS.

DELETE ADJACENT DUPLICATES FROM IT_ALV_FLIGHT COMPARING CARRID.

LOOP AT IT_ALV_FLIGHT.

 

   IT_ALV_FLIGHT-RADIO ICON_WD_RADIO_BUTTON_EMPTY.

   MODIFY IT_ALV_FLIGHT.

ENDLOOP.

 

WA_FCAT-FIELDNAME = 'RADIO'.

WA_FCAT-TABNAME = 'IT_ALV_FLIGHT'.

WA_FCAT-SELTEXT_L = 'RADIO'.

WA_FCAT-ICON = 'X'.

WA_FCAT-OUTPUTLEN = 6.

APPEND WA_FCAT TO IT_FCAT.

CLEAR WA_FCAT.

WA_FCAT-FIELDNAME = 'CARRID'.

WA_FCAT-TABNAME = 'IT_ALV_FLIGHT'.

WA_FCAT-SELTEXT_L = 'Carrid'.

WA_FCAT-OUTPUTLEN = 7.

APPEND WA_FCAT TO IT_FCAT.

WA_FCAT-FIELDNAME = 'CONNID'.

WA_FCAT-TABNAME = 'IT_ALV_FLIGHT'.

WA_FCAT-SELTEXT_L = 'Carrid'.

WA_FCAT-OUTPUTLEN = 7.

APPEND WA_FCAT TO IT_FCAT.

 

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

   EXPORTING

     I_CALLBACK_PROGRAM      = SY-REPID

     I_CALLBACK_USER_COMMAND = 'USER_COMMAND'

     IT_FIELDCAT             = IT_FCAT

   TABLES

     T_OUTTAB                = IT_ALV_FLIGHT

   EXCEPTIONS

     PROGRAM_ERROR           = 1.

 

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

*&      Form  user_command

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

*       text

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

*      -->UCOMM      text

*      -->SELFIELD   text

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

FORM USER_COMMAND USING UCOMM TYPE SY-UCOMM

SELFIELD TYPE SLIS_SELFIELD.

   CASE UCOMM.

     WHEN '&IC1'.

       LOOP AT IT_ALV_FLIGHT.

         IF IT_ALV_FLIGHT-RADIO = ICON_RADIOBUTTON.

           IT_ALV_FLIGHT-RADIO = ICON_WD_RADIO_BUTTON_EMPTY.

           MODIFY IT_ALV_FLIGHT.

         ENDIF.

       ENDLOOP.

 

       READ TABLE IT_ALV_FLIGHT INDEX SELFIELD-TABINDEX.

 

       CASE SELFIELD-FIELDNAME.

 

         WHEN 'RADIO'.

           IF IT_ALV_FLIGHT-RADIO = ICON_RADIOBUTTON.

             IT_ALV_FLIGHT-RADIO = ICON_WD_RADIO_BUTTON_EMPTY.

             MODIFY IT_ALV_FLIGHT  INDEX SELFIELD-TABINDEX

             TRANSPORTING RADIO.

           ELSE.

             IT_ALV_FLIGHT-RADIO = ICON_RADIOBUTTON.

             MODIFY IT_ALV_FLIGHT  INDEX SELFIELD-TABINDEX

             TRANSPORTING RADIO.

           ENDIF.

       ENDCASE.

   ENDCASE.

   SELFIELD-REFRESH = 'X'.

 

ENDFORM.                    "USER_COMMAND


Viewing all articles
Browse latest Browse all 8581

Trending Articles



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