Professional Documents
Culture Documents
Alv Grid List Using Radio Buttons
Alv Grid List Using Radio Buttons
Applies to:
Application Server ABAP 6.40
Summary
The program shows how to define radio buttons in ALV grid lists.
Author(s): Uwe Schieferstein
Company: Cirrus Consulting AG, Switzerland
Created on: 11 January 2007
Author Bio
Uwe Schieferstein has 8 years of SAP experience has worked as technical consultant and
developer in Switzerland (Public Sector, Banking; SAP Authorization, Transport Management).
Uwe has a MS in Biochemistry from Eberhard Karls Universität Tübingen (Germany) and
received a PhD in Molecular Biology from Swiss Federal Institute of Technology Zurich
(Switzerland). He is currently working for Cirrus Consulting AG (Switzerland).
© 2007 SAP AG 1
ALV List with Radio Buttons
Table of Contents
Applies to: ........................................................................................................................................ 1
Summary.......................................................................................................................................... 1
Author Bio ........................................................................................................................................ 1
Report ZALVGRID_WITH_RADIOBUTTONS ................................................................................. 3
Related Content............................................................................................................................. 11
Disclaimer and Liability Notice....................................................................................................... 12
© 2007 SAP AG 2
ALV List with Radio Buttons
Report ZALVGRID_WITH_RADIOBUTTONS
The following screen shot shows how the ALV grid list looks like when using radiobuttons. The radiobuttons
are not a genuine feature of ALV grid lists but are simulated using the corresponding icons and the
HOTSPOT_CLICK event.
*&---------------------------------------------------------------------*
*& Report ZALVGRID_WITH_RADIOBUTTONS
*&
*&---------------------------------------------------------------------*
*& This program shows how to realize radiobuttons in ALV grid lists
*& using event HOTSPOT_CLICK.
*&
*&---------------------------------------------------------------------*
*& Screen 100:
*& - Flow logic
*&
*& PROCESS BEFORE OUTPUT.
*& MODULE PBO.
© 2007 SAP AG 3
ALV List with Radio Buttons
*&*
*& PROCESS AFTER INPUT.
*& MODULE PAI.
*&
*& - Screen elements: none
*& - ok-code field -> gd_okcode
*&
*& GUI Status MAIN100:
*& - F3 = 'BACK', Shift+F3 = 'EXIT', F12 = 'CANC'
*&---------------------------------------------------------------------*
PROGRAM zalvgrid_with_radiobuttons.
TYPE-POOLS: abap, icon. " INCLUDE <icon>. for releases < 6.20
DATA:
gt_sflight TYPE STANDARD TABLE OF ty_s_sflight,
*
gs_layout TYPE lvc_s_layo,
gt_fcat TYPE lvc_t_fcat.
DATA:
gd_okcode TYPE ui_func,
go_docking TYPE REF TO cl_gui_docking_container,
go_grid TYPE REF TO cl_gui_alv_grid.
*---------------------------------------------------------------------*
* CLASS lcl_eventhandler DEFINITION
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_eventhandler DEFINITION.
PUBLIC SECTION.
CLASS-METHODS:
handle_hotspot_click FOR EVENT hotspot_click OF cl_gui_alv_grid
IMPORTING
e_row_id
e_column_id
es_row_no
sender.
*---------------------------------------------------------------------*
* CLASS lcl_eventhandler IMPLEMENTATION
© 2007 SAP AG 4
ALV List with Radio Buttons
*---------------------------------------------------------------------*
*
*---------------------------------------------------------------------*
CLASS lcl_eventhandler IMPLEMENTATION.
METHOD handle_hotspot_click.
* define local data
FIELD-SYMBOLS:
<ls_entry> TYPE ty_s_sflight,
<ld_fld> TYPE ANY.
ENDMETHOD. "handle_hotspot_click
*---------------------------------------------------------------------*
* MAIN *
*---------------------------------------------------------------------*
START-OF-SELECTION.
PERFORM select_data.
PERFORM init_controls.
PERFORM build_fieldcatalog.
PERFORM set_layout.
© 2007 SAP AG 5
ALV List with Radio Buttons
dynnr = '0100'
* CONTAINER =
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
lifetime_dynpro_dynpro_link = 3
OTHERS = 4.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
END-OF-SELECTION.
*---------------------------------------------------------------------*
* MODULE PBO OUTPUT *
*---------------------------------------------------------------------*
MODULE pbo OUTPUT.
SET PF-STATUS 'MAIN100'.
SET TITLEBAR 'MAIN100'.
ENDMODULE. "PBO OUTPUT
*---------------------------------------------------------------------*
* MODULE PAI INPUT *
*---------------------------------------------------------------------*
MODULE pai INPUT.
* Leave report
CASE gd_okcode.
WHEN 'BACK' OR
'EXIT' OR
'CANC'.
SET SCREEN 0. LEAVE SCREEN.
WHEN OTHERS.
* do nothing
ENDCASE.
CLEAR gd_okcode.
ENDMODULE. "PAI INPUT
*&---------------------------------------------------------------------*
*& Form BUILD_FIELDCATALOG
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM build_fieldcatalog .
© 2007 SAP AG 6
ALV List with Radio Buttons
ls_fcat-fieldname = 'BUTTON4'.
ls_fcat-coltext = ls_fcat-fieldname.
ls_fcat-icon = 'X'.
ls_fcat-hotspot = 'X'.
INSERT ls_fcat INTO gt_fcat INDEX 5.
*
ls_fcat-fieldname = 'BUTTON3'.
ls_fcat-coltext = ls_fcat-fieldname.
INSERT ls_fcat INTO gt_fcat INDEX 5.
*
ls_fcat-fieldname = 'BUTTON2'.
ls_fcat-coltext = ls_fcat-fieldname.
INSERT ls_fcat INTO gt_fcat INDEX 5.
© 2007 SAP AG 7
ALV List with Radio Buttons
*
ls_fcat-fieldname = 'BUTTON1'.
ls_fcat-coltext = ls_fcat-fieldname.
INSERT ls_fcat INTO gt_fcat INDEX 5.
*&---------------------------------------------------------------------*
*& Form SELECT_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM select_data .
* define local data
DATA:
ls_sflight TYPE ty_s_sflight.
*&---------------------------------------------------------------------*
*& Form INIT_CONTROLS
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM init_controls .
© 2007 SAP AG 8
ALV List with Radio Buttons
© 2007 SAP AG 9
ALV List with Radio Buttons
*&---------------------------------------------------------------------*
*& Form REFRESH_DISPLAY
*&---------------------------------------------------------------------*
* Refresh table display after switching the radiobuttons
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM refresh_display .
* define local data
DATA:
ls_stable TYPE lvc_s_stbl.
ls_stable-row = abap_true.
ls_stable-col = abap_true.
*&---------------------------------------------------------------------*
*& Form SET_LAYOUT
*&---------------------------------------------------------------------*
* Set layout for ALV list
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM set_layout .
CLEAR: gs_layout.
© 2007 SAP AG 10
ALV List with Radio Buttons
Related Content
• Adding Multiple check boxes to ALV and should select only one
• Events of Class CL_GUI_ALV_GRID
• Methods of the OO Control Framework
© 2007 SAP AG 11
ALV List with Radio Buttons
© 2007 SAP AG 12